Job Title: Senior Software Engineer (Backend)
Location: San Jose, CA
Employment Type: Contract
Client: Walmart
About the Opportunity
Our client is seeking a talented and experienced Senior Software Engineer to join their backend engineering team. In this role, you will be instrumental in designing, developing, and supporting scalable, high-performance distributed applications. You will work with modern cloud-native technologies and have a significant impact on the architecture and reliability of mission-critical systems. This position is ideal for a polyglot engineer with deep expertise in Go and a strong understanding of event-driven architectures.
Position Summary
As a Senior Software Engineer, you will be responsible for building and maintaining the core services that power the company's platform. You will focus on developing robust, event-driven microservices using Go, managing asynchronous communication with messaging queues, and ensuring high availability and performance in a cloud environment (Azure). This is a hands-on role where you'll be expected to lead by example, writing high-quality, well-tested code and collaborating with cross-functional teams to deliver innovative solutions.
Key Responsibilities
- Backend Development: Design, implement, and maintain scalable backend services and microservices primarily using Go (Golang).
- Event-Driven Architecture: Build and maintain event-driven solutions using a message queue system such as Apache Kafka or ActiveMQ.
- Database Management: Design data models and work with relational (SQL) and NoSQL databases to support application data needs.
- Cloud Deployment: Develop, deploy, and support applications in a Microsoft Azure environment, potentially using services like Azure Kubernetes Service (AKS).
- Messaging Integration: (Optional but valued) Work with NATS for messaging where applicable.
- Performance Tuning: Optimize application performance, scalability, and reliability.
- Collaboration: Partner with Product, Engineering, QA, and DevOps teams to ensure smooth project execution and delivery.
- API Development: Build and maintain RESTful APIs and distributed applications.
Qualifications
Required:
- Programming Languages: Strong experience with Go (Golang) and Java.
- Messaging: Proven experience with Apache Kafka and/or Apache ActiveMQ.
- Database: Proficiency in working with SQL/NoSQL databases (e.g., PostgreSQL, MySQL, Redis).
- Cloud: Hands-on experience with Microsoft Azure (e.g., AKS, Azure Functions, Key Vault).
- Architecture: Strong understanding of distributed systems, microservices architecture, and event-driven design.
- Experience: [Number] years of professional software development experience.
Preferred:
- Experience with NATS messaging.
- Experience with containerization (Docker, Kubernetes).
- Experience in a high-volume, high-scalability production environment.
- Strong production troubleshooting and performance optimization skills.
- Experience with Infrastructure as Code (Terraform).