Job Description
Remote is seeking a Software Developer to join the team in Home Affairs. The Software Developer will be a key member of the Analytic Platforms and Products (APP) team, delivering high-quality applications that enable the mission in data capture, analytics, searching, monitoring, alerting and data visualisation capabilities. The role requires a blend of technical expertise, disciplined engineering practice, and the ability to collaborate across a diverse, multidisciplinary group. All work must adhere to the organisation’s coding standards, security policies, and industry best-practice guidelines (RFI 43-2526)
Role Description
Key Responsibilities:
- Design & Development: Design, code, and unit-test new features and enhancements in one or more of the supported languages/frameworks (C#, FastAPI, React. Python).
- Maintenance & Refactoring: Diagnose, troubleshoot, and resolve defects in existing applications: refactor legacy code to improve readability, performance, and security.
- Documentation: Produce clear technical documentation, API specifications, and user guides that enable knowledge transfer and future maintenance.
- Version Control & Cl/CD: Manage source-code repositories (GitLab, BitBucket), create and maintain branching strategies, and contribute to automated build, test, and deployment pipelines.
Code Review & Mentoring: Participate in peer reviews, provide constructive feedback, and support junior team members in adopting best practices.
- Security & Compliance: Apply secure-coding principles, perform threat analyses, and ensure all deliverables meet organisational security standards.
- Collaboration: Work closely with data analysts, product owners, and data engineers to build truly valuable technical solutions.
- Continuous Improvement: Identify opportunities for process optimisation, tooling upgrades, and adoption of emerging technologies.
Mandatory Qualifications:
- Professional Experience: Minimum 5 years of full-stack development experience in a government environment and deploying to high security networks.
Desirable Qualifications:
- Specialised Platforms: Knowledge of distributed-compute and search-engine concepts such as the Apache Spark execution engine, column-store and vectorised query processing, and scalable indexing/search technologies (e.g., Elasticsearch-style architectures).
- Cloud-native / Containerisation: Experience building Docker-based or Kubernetes-orchestrated services.
- Infrastructure-as-Code (laC): Knowledge of tools such as Terraform, Ansible, or similar for automated provisioning.
- Networking & OS Administration: Understanding of virtualisation, server management, and network fundamentals.
- Security Awareness: Background in information, network, or application security best practices.
Additional Certifications: Relevant industry certifications (e.g., AWS Certified Developer, Certified Kubernetes Administrator, etc.).
Required knowledge/experience:
- Coding skills and experience in one or more languages/frameworks, e.g. C#, FastAPI, React, Python
- Software Development Lifecycle (SDLC): Requirements gathering, design, implementation, testing, deployment, and maintenance.
- Version Control & Collaboration: Branching strategies, pull-request workflows, and code-review etiquette.
- Testing Practices: Unit, integration, and automated testing frameworks appropriate to the stack.
Security Fundamentals: Secure coding guidelines, threat modelling, and vulnerability mitigation.
- Team Dynamics: Ability to work effectively in a diverse, multidisciplinary team and mentor junior developers when required.