Position Overview :
As an Intermediate Software Engineer, you will design, develop, and maintain high-performance and scalable applications for Membership, Marketing, and Map services. Your role involves coding, unit testing, and building applications to meet the needs of millions of Sam's members. You should be intellectually curious, passionate about technology, and a supportive team player.
Key Responsibilities :
- Design, code, and test scalable applications in Java and React.
- Ensure high performance and maintainability of applications.
- Participate in peer code reviews and support team deliverables.
- Manage applications to meet engineering and operational excellence criteria.
- Collaborate with team members to align efforts with business needs.
Required Skills and Experience :
- Java : Experience with Java 8 or above, including lambda functions and streams.
- React : Proficiency in React, including tools like Flux, Flow, and Redux.
- Testing : Strong in writing modular and testable code with frameworks like JUnit, Mockito, and Mock MVC.
- Front-End : In-depth knowledge of JavaScript, CSS, HTML, and React fundamentals.
- Micro-Services : Experience with micro-services architecture and distributed systems.
- Spring Boot : Hands-on experience with Spring Boot and related technologies.
- Databases : Experience with relational and NoSQL databases (e.g., Cosmos DB).
- Caching : Knowledge of caching technologies like Redis or Memcached.
- Monitoring : Experience with monitoring tools like Prometheus and Splunk.
- CI/CD : Familiarity with CI/CD tools like Jenkins, Git, Maven, and Gradle.
- Containerization : Experience with Docker, Helm, and Kubernetes.
- Cloud Platforms : Experience with Azure, GCP, or similar public cloud platforms.
- Performance Testing: Experience with performance testing tools like JMeter is a plus.
- Retail Domain Knowledge : Good understanding of the retail domain is beneficial.
Qualifications :
- Bachelor's degree in Computer Science, Engineering, or related field.
- 7+ years of experience in software engineering or a related field.
Additional Information :
- Strong problem-solving skills and analytical thinking.
- Ability to work effectively in a team environment