The Senior Software Developer is responsible for designing and developing robust, sustainable software and integration components that enhance our client’s business functions, promoting effectiveness and efficiency. In this role, you will provide thought leadership and design solutions that take a holistic approach, aligning with the Enterprise Architecture patterns. You will also offer technical leadership across projects to ensure their effective delivery and adherence to agreed architecture standards, ensuring that software applications are scalable, secure, and maintainable. You will also contribute to all aspects of the application lifecycle, ensuring solutions fit within the enterprise context and offering feedback on architectural design and technical documentation for system-related initiatives.
KEY TASKS
- Work with Business Analysts to translate business processes into functional requirements, contributing to the creation of the solution architecture and design.
- Lead technical designs to create solution architecture documents and patterns to support solution delivery.
- Define and document software integration to agreed standard and patterns.
- Enhance existing software components as part of a change request process to enable new functionality.
- Provide assistance and recommendations with the evaluation of new software solutions.
- Ensure that Developer documentation for software and solutions is fit for purpose and current.
- Serve as a technical liaison among project managers, developers, and stakeholders.
- Work alongside project managers to add the technical components of a project enable overall project plans and schedules to be developed.
- Actively maintain and contribute to establishing and maintaining architecture artefacts, standards and roadmaps.
- Engage and work with leadership, business product owners and stakeholders to provide software and technology solutions that deliver to the companies requirements.
- Actively participate in project activities and provide technical leadership to assigned projects.
- Participate in Architecture Review Board meetings and appropriate communities of practices.
- Work with external support providers where necessary to deliver the required outcomes
- Coach and mentor software engineers, programmers, and other team members.
- Actively participate in and contribute to ITS Knowledge Share sessions.
EDUCATIONAL QUALIFICATIONS
- Bachelor’s degree or higher in Computer Science or related field, or equivalent relevant work experience.
- Industry certifications such as TOGAF, Zachman, AWS or Azure Architect certifications
- Minimum of five years’ work experience in software analysis, support, and development.
- Excellent analytical and problem-solving skills.
- Big picture problem solving skills.
- Experience in native public cloud software architecture patterns (Azure preferential)
- Expertise with integration technologies (XML, JSON, SOAP, JMS Queues, ESB, ETL, Restful Web Services, Azure Data Integration Services etc
- Experience or good understanding of Microsoft Azure Data Platform (or similar) (Synapse, Data
- Sound knowledge and understanding of cloud technologies including SaaS, PaaS and IaaS
- Experienced with creating technical documentation.
- Experienced in developing and/or interfacing with web services.
- A thorough understanding of object-oriented programming concepts and languages.
- Awareness of emerging software development technologies and standards.
- A good knowledge of .Net, CSS, and HTML.
- Experience with using SQL databases.
- Demonstrated software design skills including function / class level design, interfaces between components.
- Experience with one or more scripting languages such as JavaScript or similar.
- Familiarity with SQL Databases.
- Experience with using continuous integration and continuous development (CI/CD) practices.
- Experienced with the Agile development methodology.