
Software Engineer
- Pune, Maharashtra
- Permanent
- Full-time
- Apply depth of knowledge and expertise to all aspects of the software development lifecycle, as well as partner continuously with stakeholders on a regular basis
- Develop and engineer solutions within an Agile software delivery team, working to collaboratively deliver sprint goals, write code, and participate in the broader Citi technical community and team-level Agile and Scrum processes.
- Contribute to the design, documentation, and development of world-class enterprise applications leveraging the latest technologies and software design patterns.
- Leverage technical knowledge of concepts and procedures within own area and basic knowledge of other areas to resolve issues, as necessary.
- Follow and contribute to defining technical and team standards.
- Collaborate technical leadership to achieve established goals, in line with our broader technical strategy.
- 5+ years of experience as a Software Engineer/Developer using Java
- Multiple years of experience with software engineering best practices (unit testing, automation, design patterns, peer review, etc.).
- Clear understanding of Data Structures and Object Oriented Principles using Java
- Multiple years of experience on Service Oriented and MicroServices architectures, including REST and GraphQL implementations.
- Exposure to front-end technologies (Angular, Javascript, Typescript)
- Exposure to Cloud-native development and Container Orchestration tools (Serverless, Docker, Kubernetes, OpenShift, etc.)
- Multiple years of experience with frameworks like Spring Boot, Quarkus, Micronaut, or Vert.x
- Exposure to Continuous Integration and Continuous Delivery (CI/CD) pipelines, either on-premise or public cloud (i.e., Tekton, Harness, CircleCI, Cloudbees Jenkins, etc.).
- Multiple years of experience with agile and iterative software delivery (SCRUM, Kanban)
- Exposure to Database technologies (RDBMS, NoSQL, Oracle, MySQL, Mongo)
- Exposure to event-driven design and architecture (i.e., Kafka, Spark Flink, RabbitMQ, etc.)
- B.Tech/B.Engg degree or equivalent work experience
- Exposure to architecture experience in building horizontally scalable, highly available, highly resilient, and low latency applications.
- Exposure to Cloud infrastructure both on-premise and public cloud (i.e., OpenShift, AWS, etc.).
- Exposure to API Management tools
- Exposure to Infrastructure as Code tools (i.e., Terraform, Cloudformation, etc.)
- Exposure to Security, Observability, and Monitoring (i.e., Grafana Prometheus, Splunk, ELK, CloudWatch, etc.)
- Experience mentoring junior developers
- Exposure to database concepts (RDBMS, NoSQL) and web-based technologies (Angular/React) is a plus