The Lead Java Middle Tier Developer is responsible for establishing and implementing new or revised application systems and programs in coordination with the Technology team. The overall objective of this role is to lead applications systems analysis and programming activities.
Requirements
- Java concurrency (practical experience and good knowledge)
- Experience in developing distributed systems
- At least 3 years of experience writing both REST and SOAP Web Services.
- Expert Knowledge of: Threading, Collections, Exception Handling, JDBC, Java OOD/OOP Concepts, GoF Design Patterns, MoM and SOA Design Patterns, File I/O, and parsing XML and JSON, delimited files and fixed length files, String matching, parsing, building, working with binary data / byte arrays.
- Good Knowledge of Spring including Spring Framework, Spring Boot, Spring Security, Spring Web, Spring Data
- Good knowledge of SQL (Oracle dialect is preferable)
- Experience in Microservices development
Responsibilities
- Write good and well-tested code in Java
- SOA API middleware implementation (both REST and SOAP)
- Design and develop scalable backend services and middleware components using Java 17+, Spring Boot, Message brokers and Relational Databases
- Collaborate closely with frontend developers to design APIs, troubleshoot integration issues, and ensure comprehensive end-to-end functionality.
- Identify and remediate performance bottlenecks in Java applications, including memory leaks, thread contention, and garbage collection issues.
- Perform database performance tuning, query profiling, and explain plan analysis.
- Debug and troubleshoot issues across the stack — from client-side interactions to backend services and database layers.
Other
- Applicants must be authorized to work in the U.S. (Citi will not sponsor applicants for U.S. work authorization for this position).
- Position is based in New Jersey City.
- Candidate must be located within commuting distance or be willing to relocate to the area
- Work in a fast-paced Agile/Scrum environment and follow SDLC best practices.
- Participate in code reviews, architectural discussions, and sprint ceremonies.