CSIT develops digital products to advance the national security interests of Singapore. We are looking for talented software engineers with a growth mindset and a passion for creating great products to improve the effectiveness and productivity of the organisation.
About this role
As a backend software engineer in the Information Management Systems team there will be abundant opportunities to innovate by exploring and implementing solutions to support existing products and/or build new applications/systems. You will work together with the team to deliver business value through enhanced digital solutions.
You will have the autonomy to find the best way to solve problems such as finding the most suitable technologies to use.
Responsibilities
Write high-quality code with unit functional and end-to-end tests
Design build and deploy applications and APIs
Participate in peer reviews and provide feedback to ensure best-practices (e.g. code styles git check-ins testability and performance)
Improve system resiliency by detecting/debugging/tracking/resolving issues
Contribute to documentation and/or educational content for knowledge sharing and retention
Requirements (Minimum Qualifications)
Degree in Computer Science Computer Engineering Information Systemsorarelated field
At least 2 years of hands-on experience in Java programming. Relevant project or internship experience will be considered for fresh graduates.
Experience in back-end development using frameworks such as Spring Boot
Familiarity with microservices architecture & RESTful API design
Nice-to-haves
Software development experience with Agile SCRUM practices testing and production error/metrics monitoring
Experience in container technologies such as Docker and Kubernetes
Familiarity with CI/CD processes
Experience with Search engines such as Elasticsearch and Solr
Familiar with Messaging systems such as RabbitMQ and Kafka
Familiar with MongoDB
Familiar with Object stores such as MinIO
Familiar with Metrics/logging systems such as Elastic Stack and Prometheus/Grafana
Considerations for Senior Positions
Candidates with at least 3 years of experience in software development with proven track record of the above qualifications
Experience in providing technical mentorship to junior software engineers
Experience in collaborating across teams to develop and deliver complex systems/products (e.g. communicating and negotiating architectural designs and technical solutions)