01 Aug
|
Citigroup
|
Chennai
**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 **Key Responsibilities:** + **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. **Required Technical Qualifications:** + **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 workplace. + **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 (https://www.citigroup.com/citi/accessibility/application-accessibility.htm)_ _._ _View Citi's_ _EEO Policy Statement (https://www.citigroup.com/global/eeo-aa-policy)_ _and the_ _Know Your Rights (https://www.eeoc.gov/sites/default/files/2023-06/22-088_EEOC_KnowYourRights6.12ScreenRdr.pdf)_ _poster._ Citi is an equal opportunity and affirmative action employer. Minority/Female/Veteran/Individuals with Disabilities/Sexual Orientation/Gender Identity.
📌 Senior Software Engineer - Core Java & Apache Spark (Chennai)
🏢 Citigroup
📍 Chennai