Role Overview
This role focuses on designing, developing, and maintaining enterprise full stack applications that support data-driven and AI-enabled business solutions. Working closely with cross-functional teams, the successful candidate will deliver scalable, secure, and maintainable software while contributing to technical discussions, solution design, and continuous improvement initiatives.
Your responsibilities for this assignment may include:
Full Stack Application Development
- Designing, developing, and maintaining responsive web applications using ReactJS and TypeScript for frontend development.
- Developing backend services, APIs, and business logic using Python frameworks, preferably Django or FastAPI.
- Building reusable frontend components, backend services, and application modules to support evolving business requirements.
- Designing, developing, and consuming RESTful APIs to facilitate seamless integration between frontend, backend, AI services, and enterprise systems.
- Enhancing existing applications through performance optimisation, feature enhancements, bug fixes, and technical improvements.
AI & Data-Driven Solutions
- Developing software components that support AI-enabled and data-intensive business workflows.
- Integrating applications with AI models, analytics platforms, and enterprise data services.
- Collaborating with multidisciplinary teams, including data engineers and data scientists, to deliver scalable AI-powered digital solutions.
- Supporting the implementation of data processing and analytics capabilities within enterprise applications.
Software Engineering & Architecture
- Applying software engineering best practices, design patterns, and system architecture principles to develop scalable and maintainable applications.
- Contributing to solution architecture discussions and technical design decisions.
- Evaluating technical approaches that balance performance, maintainability, security, and business requirements.
- Supporting the continuous improvement of application architecture and engineering practices.
DevOps, CI/CD & Quality Engineering
- Developing, maintaining, and enhancing CI/CD pipelines using GitLab and related DevOps tools.
- Supporting automated build, testing, deployment, and release processes.
- Developing and maintaining automated testing frameworks, unit tests, integration tests, and quality assurance processes.
- Working with containerised environments using Docker, Kubernetes, and related deployment technologies.
- Supporting application monitoring, troubleshooting, and production deployments.
Collaboration & Delivery
- Working closely with product owners, designers, software engineers, and other technical stakeholders throughout the software development lifecycle.
- Participating in Agile ceremonies including sprint planning, stand-ups, retrospectives, backlog refinement, and sprint reviews.
- Performing code reviews and providing constructive technical feedback to promote software quality and maintainability.
- Preparing and maintaining technical documentation, implementation guides, and system artefacts.
Governance & Best Practices
- Following established software development standards, coding guidelines, and security best practices.
- Supporting compliance with organisational governance, security, and ICT policies where applicable.
- Promoting continuous improvement through knowledge sharing and the adoption of engineering best practices.
Skills & Experience
The successful candidate should possess:
- At least 3 years of experience in full stack software development.
- Strong proficiency in ReactJS, TypeScript, JavaScript, HTML5, and CSS.
- Experience developing backend applications using Python, preferably with Django, FastAPI, or similar frameworks.
- Experience designing and consuming RESTful APIs and integrating enterprise applications.
- Experience working with source control systems and CI/CD pipelines using Git, GitLab, or similar tools.
- Familiarity with containerisation technologies such as Docker and orchestration platforms such as Kubernetes.
- Good understanding of DevOps practices, automated testing, deployment automation, and software delivery pipelines.
- Good understanding of software architecture, distributed systems, and modern application design principles.
- Experience working in Agile software development environments.
- Strong analytical, problem-solving, communication, and stakeholder management skills.
Preferred Experience
Candidates with the following will have an advantage:
- Experience developing AI-enabled or data-driven enterprise applications.
- Experience working with multidisciplinary teams, including data scientists and data engineers.
- Experience with observability and monitoring technologies such as OpenTelemetry.
- Familiarity with Government ICT security standards and IM8 policies.
- Experience developing and deploying enterprise applications on containerised platforms.