Overview
Staff Software Engineer in Walmart Global Tech's Customer Technology service, building data pipelines, web services and messaging solutions for Finance, People and Associate Digital Experience.
What you'll do
- Architect and develop application and pipelines using Java Spring Boot and Scala to process large volumes of data efficiently.
- Implement data transformation logic to cleanse, normalize and aggregate data from various sources, ensuring high data quality and consistency.
- Develop web services on Java and Scala using libraries such as Akka HTTP and Play Framework.
- Develop efficient and scalable Kafka messaging solutions, configure and manage Kafka clusters, and ensure reliable data ingestion and processing.
- Integrate data from different systems and sources, including structured and unstructured data, databases and Mainframe systems, ensuring seamless data flow and compatibility.
- Implement data validation and quality checks within data pipelines, and handle exception handling and error logging.
- Develop and execute unit, integration and end-to-end tests to ensure the reliability and correctness of Spark applications.
- Debug and troubleshoot issues during development and production phases.
- Contribute to DevOps for SBT builds, application deployment stages and releases.
- Design, implement and maintain Continuous Integration and Continuous Deployment pipelines.
- Automate and optimize the build, test and deployment processes to enable rapid and reliable software delivery.
- Collaborate with cross-functional teams, including product managers, architects and other developers, to understand data requirements and deliver optimal solutions.
- Document data engineering processes, data flows and technical specifications.
- Keep up to date with the latest advancements in Java, Spark Scala and related technologies, frameworks and tools.
What you'll need
- Bachelor's degree in Computer Science, Software Engineering or a related technical discipline.
- 8 to 12 years of core software product development experience.
- Profound knowledge of the Java language ecosystem, including modern features such as virtual threads, lambdas and streams.
- In-depth, practical experience with Spring Boot, Spring MVC, Spring Security and Spring Cloud, GCP.
- Hands-on expertise in the Scala programming language, with a solid understanding of object-oriented and functional programming paradigms.
- Familiarity with big data technologies, distributed computing concepts, and experience handling large-scale data pipelines using GCP Apache Spark.
- Proven experience designing, building, securing and maintaining RESTful web services and enterprise-grade microservices.
- Strong expertise in Kafka messaging architecture and extensive hands-on experience developing real-time, event-driven Kafka applications.
- Deep understanding of streaming architectures and event-driven mechanics using message brokers such as Apache Kafka or RabbitMQ.
- Experience connecting microservices and data pipelines to relational (SQL) and non-relational (NoSQL) databases using modern ORM/data frameworks such as Hibernate or Spring Data JPA.
- Strong understanding of cloud-based data architecture and native GCP services, specifically BigQuery, Cloud Storage and Dataflow.
- Familiarity with containerization tools (Docker, Kubernetes) and a solid grasp of CI/CD pipelines (Jenkins, GitLab CI/CD).
- Passion for writing clean code backed by comprehensive JUnit and mock test suites.
- Proactive ability to isolate bottlenecks, debug legacy code regressions, and implement memory or query-level optimizations.
- Solid grounding in core computer science principles including algorithms, data structures, databases and operating systems.
- Mastery of version control (Git), rigorous debugging practices, and full Software Development Lifecycle (SDLC) methodologies.
- Analytical thinking to break down complex data engineering challenges, find root causes and propose robust, clean solutions.
- Minimum: Option 1: Bachelor's degree in computer science, computer engineering, computer information systems, software engineering or a related area and 4 years' experience in software engineering or a related area. Option 2: 6 years' experience in software engineering or a related area.
Nice to have
- Master's degree in Computer Science, Computer Engineering, Computer Information Systems, Software Engineering or a related area and 2 years' experience in software engineering or a related area.
Details
- Location: Chennai, Tamil Nadu, India (Tower 1, Intl Tech Park Radial Road, Chennai).
- Work mode: based in the Chennai office for daily work, with flexibility for associates to manage personal lives.
Read the full description and apply on the company’s own careers page.