Senior Software Engineer - Core Java & Apache Spark
We are hiring an elite Senior Software Engineer to build and scale our core data processing and application infrastructure. This role demands deep, hands-on expertise in the Java ecosystem and distributed computing with Apache Spark. You will be responsible for the architecture, design, and implementation of mission-critical systems that process massive datasets, requiring a mastery of concurrency, JVM internals, and modern cloud-native patterns.
Core Tech Stack:- Languages & Runtimes: Java (8+), SQL, JVM
- Frameworks & Libraries: Spring (Boot, Data, Security, Batch, Integration), Apache Spark (RDD, Spark SQL, DataFrames/DataSets)
- Big Data Ecosystem: Hadoop, Hive, Impala, Spark Tuning & Optimization
- Databases: Relational (e.g., PostgreSQL, Oracle), NoSQL (MongoDB, Graph DB)
- Messaging & Middleware: JMS, Solace
- Containerization & Orchestration: Docker, Kubernetes, OpenShift
- Build & CI/CD: Maven, Gradle, Jenkins, Git
- Code Quality & Security: SonarQube, TDD (JUnit/Mockito), Secure Coding Practices
- Architect & Build: Design and construct high-throughput, low-latency data processing pipelines using Apache Spark and the Spring ecosystem.
- Performance Engineering: Dive deep into JVM internals, garbage collection tuning, and Spark job optimization to maximize performance and resource efficiency.
- Distributed Systems Design: Implement scalable, resilient, and transactional architectures leveraging container orchestration (Kubernetes/OpenShift) and distributed data stores.
- Code & Design Excellence: Champion and enforce best practices in software engineering, including SOLID principles, advanced design patterns, Domain-Driven Design (DDD), and Test-Driven Development (TDD).
- Database Mastery: Engineer and optimize data models for both relational and NoSQL databases, ensuring data integrity, performance, and scalability.
- CI/CD Automation: Own and enhance CI/CD pipelines for automated build, test, and deployment of Java applications and Spark jobs in a containerized environment.
- Technical Leadership: Lead design and code reviews, mentor junior engineers, and drive the adoption of new technologies and architectural patterns across the team.
- Core Java & JVM: Expert-level proficiency in Java, including the Collections Framework, Lambdas, and the Java Concurrency API. Demonstrable experience tuning the JVM and troubleshooting memory/GC issues.
- Apache Spark: Proven, hands-on experience developing, deploying, and tuning complex Spark applications for large-scale data transformation and analysis.
- Spring Ecosystem: Extensive, practical experience with the Spring Framework, particularly Spring Boot, Spring Data, and Spring Batch in a production environment.
- Data Structures & Algorithms: Deep understanding of fundamental data structures and algorithms, with a focus on their application in distributed computing and performance-critical systems.
- Containerization & Cloud-Native: Hands-on experience with Docker for building images and Kubernetes/OpenShift for deploying and managing distributed applications.
- Database Engineering: Strong command of SQL and relational database design, including transaction management and indexing. Experience with at least one production NoSQL database (MongoDB, Graph DB, etc.).
- Architectural Design: Practical application of OOP, SOLID, and DDD principles to build maintainable and scalable systems. You write tests first (TDD) and believe in robust, automated testing.
------------------------------------------------------
Job Family Group: Technology------------------------------------------------------
Job Family:Applications Development------------------------------------------------------
Time Type:Full time------------------------------------------------------
Most Relevant Skills Please see the requirements listed above.------------------------------------------------------
Other Relevant Skills For complementary skills, please see above and/or contact the recruiter.------------------------------------------------------
Citi is an equal opportunity employer, and qualified candidates will receive consideration without regard to their race, color, religion, sex, sexual orientation, gender identity, national origin, disability, status as a protected veteran, or any other characteristic protected by law.
If you are a person with a disability and need a reasonable accommodation to use our search tools and/or apply for a career opportunity review Accessibility at Citi.
View Citi’s EEO Policy Statement and the Know Your Rights poster.
Skills Required
- Expert-level proficiency in Java, including Collections Framework and Concurrency API
- Hands-on experience developing and tuning Spark applications
- Extensive experience with Spring Framework, particularly Spring Boot
- Deep understanding of data structures and algorithms
- Experience with Docker and Kubernetes
- Strong command of SQL and relational database design
- Practical application of OOP, SOLID, and DDD principles
Citi Compensation & Benefits Highlights
The following summarizes recurring compensation and benefits themes identified from responses generated by popular LLMs to common candidate questions about Citi and has not been reviewed or approved by Citi.
-
Healthcare Strength — Health coverage is presented as comprehensive, including free in-network preventive care, mental-health resources, and the Be Well Program. Materials also state new hires have access to health and insurance benefits from the outset.
-
Retirement Support — The retirement plan offers a $1-for-$1 match up to 6% of eligible pay. New employees are eligible for the plan, with automatic enrollment after 90 days if they do not enroll themselves.
-
Inclusive Benefits Coverage — Benefits highlight fertility treatment coverage, adoption/surrogacy reimbursement up to $30,000, and disability coverage. Coverage extends to spouses and domestic partners regardless of gender identity or sexuality, with gender-affirming care-related support noted.
Citi Insights
What We Do
Citi's mission is to serve as a trusted partner to our clients by responsibly providing financial services that enable growth and economic progress. Our core activities are safeguarding assets, lending money, making payments and accessing the capital markets on behalf of our clients. We have 200 years of experience helping our clients meet the world's toughest challenges and embrace its greatest opportunities. We are Citi, the global bank – an institution connecting millions of people across hundreds of countries and cities.








