- Company Name
- Civica
- Job Title
- Software Engineer - Golang
- Job Description
-
**Job title**
Software Engineer – Golang
**Role Summary**
Design, develop, and maintain scalable, secure backend systems in Go for large‑scale public sector applications. Own complex components, drive technical direction, and collaborate with cross‑functional teams to deliver high‑performance APIs and microservices that meet business and regulatory requirements.
**Expectations**
- Build performant, reliable, and maintainable Go code following industry best practices.
- Own end‑to‑end delivery of backend services, from architecture to deployment.
- Continuously improve product quality through code reviews, testing, and observability.
- Keep current with Go ecosystem, cloud platforms, and DevOps practices to drive innovation.
**Key Responsibilities**
- Develop large‑scale backend systems using Go, focusing on performance, reliability, and maintainability.
- Drive technical decisions and own complex system components.
- Collaborate with product, design, and operations to elicit requirements and produce technical solutions.
- Design and implement RESTful APIs, microservices, and event‑driven architectures.
- Create and maintain CI/CD pipelines for automated testing, build, and deployment.
- Troubleshoot production issues through log analysis, profiling, and collaborative debugging.
- Apply observability principles (logging, metrics, tracing) and monitoring tools (Prometheus, Grafana).
- Enforce code quality standards via peer reviews and automated checks.
- Mentor junior engineers and share knowledge on Go best practices.
**Required Skills**
- Proficient in Go with a strong grasp of concurrency and performance tuning.
- Experienced in designing RESTful APIs, microservices, and event‑driven systems.
- Familiarity with cloud platforms (AWS, Azure, GCP).
- Knowledge of relational databases, caching mechanisms, and messaging queues (e.g., Kafka, RabbitMQ).
- Comfortable with Agile development (Scrum, Kanban).
- Solid testing practices: unit, integration, and end‑to‑end.
- Understanding of CI/CD, containerization (Docker, Kubernetes).
- Ability to implement observability and monitoring.
- Awareness of cloud security fundamentals (IAM, secret management).
**Required Education & Certifications**
- Bachelor’s degree in Computer Science, Software Engineering, or related field (or equivalent practical experience).
- Optional: Go developer certificates or relevant cloud platform certifications (AWS Certified Developer, Azure Developer Associate, GCP Professional Cloud Developer).