Principal, Software Engineer
ExternalPrepare for this interview
EliteAI-generated questions, company research, and talking points tailored to this role
About the role
Position Summary... Walmart's Enterprise Business Services (EBS) is a powerhouse of seven exceptional teams delivering world-class technology solutions and services making a profound impact at every level of Walmart. As a key part of Walmart Global Tech, our teams set the bar for operational excellence and leverage emerging technology to support millions of customers, associates, and stakeholders worldwide. Joining EBS means embarking on a journey of limitless growth, relentless innovation, and the chance to set new industry standards that shape the future of Walmart. As a Principal Software engineer, you will be working with a high performing team of 10 to 30 engineers. You will provide technical leadership and be accountable for the technical architecture of software applications built, released and deployed through sophisticated CICD pipelines. What you'll do... Technical Leadership: Guide the team in architectural decisions and best practices for building scalable applications. Provide multiple alternatives for development frameworks, libraries, and tools. Development Frameworks. Enable the development of scalable solutions for data intensive batch and streaming applications. Your expertise in and understanding of thefollowing technology frameworks will help us to accelerate our technology modernization : Java Frameworks: Spring Boot : Our default choice for creating production-grade Spring-based applications. You should be well versed in building REST, Streaming and Batch applications using Java and Spring Boot. Micronaut : Your knowledge of Micronaut or a related framework that can be used as a alternative of Spring Boot will help us in building modular, easily testable microservice applications. Persistence Frameworks: Hibernate : A thorough understanding of this Object-relational mapping (ORM) framework for data handling is required. You will be building applications using Spring Data built on top of Hibernate. MyBatis : As a technical leader you should have broaden your understanding to MyBatis or any other persistence frameworks other than Hibernate for leveraging custom SQL, stored procedures, and advanced mappings. Big Data Processing: Apache Spark : It is our unified analytics engine for large-scale data processing. Prior experience in Java Spark or python spark projects is desirable. Streaming Frameworks: Apache Kafka : We extensivily use this distributed event streaming platform for high-throughput data pipelines. Knowledge and prior experience of Apache Kafka is a must. Apache Pulsar : Your understanding of Multi-tenant, high-performance messaging solution will help us in building platforms. Unit Testing Frameworks: Your expertise in the following testing frameworks will be leveraged by the developers to speed up the test coverage. JUnit : The standard framework for unit testing all our Java applications. TestNG : We also use TestNG to cover other categories of tests. Mockito : Being a downstream application, we use this framework for creating mock objects for testing purposes when we are not able to engage upstream for testing.. MockMVC : We are also using this testing framework for Java and Groovy applications. Integration Testing Frameworks: Here are the integration testing frameworks that we use in our applications. Your knowledge and your ability to learn these frameworks is absolutely essential. Spring Test : Provides integration testing support for Spring applications. Testcontainers : Provides throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container. WireMock : A simulator for HTTP-based APIs, useful for integration testing. Cucumber : Supports Behavior-Driven Development (BDD) and can be used for writing integration tests in a natural language format. Embedded Kafka : For running Kafka brokers locally during integration testing. Automated Testing Frameworks: These are the Automated testing frameworks that we use in our applications. Your knowledge and your ability to learn these frameworks is absolutely essential. Selenium : Browser automation tool for web application testing. Cypress : Fast, easy, and reliable testing for anything that runs in a browser. RestAssured : For testing REST APIs. Gatling : For performance testing of web applications. Karate : A framework for API testing, performance testing, and even UI testing. Continuous Integration/Continuous Deployment (CI/CD): Prior working knowledge in Jenkins and Gitlab are essential. You understanding of other CICD platforms is desirable. Jenkins : Extensible open-source CI/CD server. GitLab CI : Integrated CI/CD pipelines in GitLab. CircleCI : Continuous integration and delivery platform. Travis CI : Continuous integration service used to build and test software projects hosted on GitHub. Argo CD : Declarative, GitOps continuous delivery tool for Kubernetes. Platform Building: Your experience in the following platform building te
Your Match
How well this role fits your profile.
Company Intel
What employees say
Worked at Walmart? Share your experience