About The Position

The Applications Development Senior Programmer Analyst is an intermediate level position responsible for participation in the establishment and implementation of new or revised application systems and programs in coordination with the Technology team. The overall objective of this role is to contribute to applications systems analysis and programming activities.

Requirements

  • Bachelor's or Master's degree in Computer Science, Engineering, or a related field.
  • 5-8 years of professional experience in software development, with a strong focus on Java.
  • Proven track record of hands-on experience in designing and building scalable applications using Spring Boot.
  • Extensive experience with relational databases and SQL (e.g., Oracle, PostgreSQL, MySQL).
  • Experience with microservices architecture and RESTful API design.
  • Familiarity with cloud platforms (e.g., AWS, Azure, GCP) is a plus.
  • Experience with version control systems (e.g., Git).
  • Experience with Agile development methodologies (Scrum, Kanban).
  • Mandatory: Java (Core Java, Java 8+), Spring Framework (Spring Boot, Spring MVC, Spring Data JPA), SQL, RESTful APIs.
  • Excellent problem-solving and analytical skills.
  • Strong communication and interpersonal skills.
  • Ability to work independently and as part of a team.
  • Strong leadership and mentoring capabilities.
  • Detail-oriented with a focus on quality and continuous improvement.

Nice To Haves

  • Strongly Preferred: Microservices, Docker, Kubernetes, CI/CD tools (Jenkins, GitLab CI), Messaging Queues (Kafka, RabbitMQ), Unit Testing (JUnit, Mockito).
  • A passion for technology and a desire to learn new things.
  • Proactive and self-driven, with a strong sense of ownership.
  • Ability to thrive in a fast-paced, dynamic environment.
  • Commitment to delivering high-quality software solutions.

Responsibilities

  • Lead the design, development, and implementation of complex enterprise-level applications using Java and Spring Boot.
  • Develop and maintain high-quality, reusable, and testable code following established coding standards and best practices.
  • Design and optimize relational database schemas and queries using SQL.
  • Participate in code reviews to ensure code quality, maintainability, and adherence to architectural guidelines.
  • Collaborate with product owners, business analysts, and other stakeholders to understand requirements and translate them into technical specifications.
  • Troubleshoot and debug production issues, providing timely resolutions and root cause analysis.
  • Mentor and guide junior developers, fostering a culture of continuous learning and improvement.
  • Contribute to architectural discussions and decisions, ensuring solutions align with overall system architecture.
  • Implement and maintain CI/CD pipelines to automate testing and deployment processes.
  • Stay up-to-date with emerging technologies and industry trends, evaluating their potential impact and applicability.

Benefits

  • In addition to salary, Citi’s offerings may also include, for eligible employees, discretionary and formulaic incentive and retention awards.
  • Citi offers competitive employee benefits, including: medical, dental & vision coverage; 401(k); life, accident, and disability insurance; and wellness programs.
  • Citi also offers paid time off packages, including planned time off (vacation), unplanned time off (sick leave), and paid holidays.
  • For additional information regarding Citi employee benefits, please visit citibenefits.com. Available offerings may vary by jurisdiction, job level, and date of hire.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service