Java & Microservices Development Lead – Vice President
About the role
Citi, a leading global bank with approximately 200 million customer accounts and operations in more than 160 countries, seeks a skilled Java Backend Developer to join our Enterprise Operations & Technology teams. Our technology solutions underpin everything from bank security and global resource management to digital architecture and customer experience. We are looking for innovators with well-rounded backgrounds who bring their authentic selves to work and complement our culture of delivering results with pride.
Responsibilities
- Translate complex business requirements and functional specifications into robust and intuitive user interfaces and software solutions
- Partner with Product teams to understand business needs and functional specifications
- Collaborate with cross-functional teams to ensure specifications are converted into flexible, scalable, and maintainable solution designs
- Evaluate project deliverables to ensure they meet specifications and architectural standards
- Work as part of development teams to design and build complex solutions, ensuring alignment with the architecture blueprint, standards, target state architecture, and strategies
- Coordinate, execute, and participate in component integration (CIT), system integration testing (SIT), and user acceptance testing (UAT) to identify and resolve application errors and ensure quality software deployment
- Possess a solid grasp of software design patterns and approaches; understand application-level software architecture and make technical trade-off decisions
- Solve complex architecture/design and business problems, developing extensible solutions; work to simplify, optimize, and remove bottlenecks
- Provide mentoring and guidance to junior engineers, offering feedback and direction on specific engineering tasks
- Maintain application hygiene and address any Risk & Control items
- Work closely with Project Managers, Business Analysts, and Operational users/Product managers to deliver projects
- Work independently on project deliverables, articulate issues/challenges, and proactively communicate risks
- Handle code releases in various environments
Qualifications
- 6-10 years of hands-on experience in Java backend development (Java 8+ preferred), including deep understanding of core Java concepts, object-oriented programming, data structures, algorithms, and design patterns
- Experience with Spring Boot, Spring JPA, Spring Cloud, JDBC, Hibernate, REST, and Maven is essential
- Demonstrated proficiency in Java 8+ features (lambda expressions, streams, functional interfaces) and functional programming paradigms is required
- Python programming experience is a plus
- Proven experience transforming data between various formats such as XML, FXML, SWIFT, JSON, and CSV, utilizing relevant libraries and tools
- Extensive experience with microservices architecture and related technologies, including Docker, Kubernetes/OpenShift, and cloud computing platforms (AWS, Azure, GCP); strong understanding of microservice design patterns, principles, and best practices
- Experience implementing Kafka consumers, producers, and streaming applications; familiarity with TIBCO EMS and IBM MQ is highly desirable
- Experience with secure file transfer protocols (SFTP) is required
- Solid understanding of both SQL and NoSQL databases; hands-on experience with MongoDB is preferred; familiarity with relational databases (e.g., Oracle, PostgreSQL) is required
- Experience with Kafka Streams and Apache Flink is a significant advantage
- Experience working in an Agile environment using TDD/BDD best practices; proficiency with JUnit and Mockito for unit and integration testing is essential
- Good knowledge of DevOps principles and CI/CD practices; experience with tools like Jenkins, TeamCity, IBM UrbanCode Deploy, and SonarQube is highly desirable
- Experience implementing RESTful and GraphQL APIs, including API design, development, and security best practices; experience with WebSocket implementations is preferred
- Proficiency with Git/Bitbucket for version control is required
- Strong communication, analytical, problem-solving, and leadership skills are essential; demonstrated ability to take ownership, collaborate effectively, and communicate technical concepts clearly
Education
Bachelor's degree/University degree or equivalent experience required. Master's degree preferred.
Pay & Schedule
Full time position. Primary Location: Jersey City, New Jersey, United States. Salary range: $142,320.00 - $213,480.00. In addition to salary, eligible employees may receive discretionary and formulaic incentive and retention awards.
Benefits
- Medical, dental, and vision coverage
- 401(k) plan
- Life, accident, and disability insurance
- Wellness programs
- Paid time off packages including planned time off (vacation), unplanned time off (sick leave), and paid holidays