Staff Software Engineer
Wenger & Watson
Bengaluru, Karnataka, India
Description
- 8–12 years of relevant professional software engineering experience, with demonstrated experience designing and delivering complex production systems.
- Bachelor’s or Master’s degree in Computer Science, Computer Engineering, Software Engineering, or a related technical discipline, or equivalent practical experience.
- Advanced proficiency in Java with strong understanding of the Java ecosystem, concurrency, collections, JVM fundamentals, performance considerations, and modern development practices.
- Strong hands-on experience building production services using Spring Boot and related Spring technologies.
- Strong experience designing, implementing, versioning, and operating RESTful APIs.
- Hands-on experience developing modern web applications using ReactJS and the JavaScript/TypeScript ecosystem.
- Strong hands-on experience designing and building applications on AWS.
- Demonstrated experience designing and operating microservices and distributed systems.
- Strong understanding of software architecture, object-oriented design, domain modeling, design patterns, SOLID principles, and clean-code practices.
- Strong knowledge of relational and/or NoSQL databases, data modeling, indexing, transactions, query optimization, and persistence patterns.
- Experience designing systems for high availability, scalability, reliability, resilience, and performance.
- Strong understanding of distributed-system concepts including consistency, concurrency, asynchronous processing, idempotency, retries, fault tolerance, and eventual consistency.
- Strong understanding of automated testing including unit, integration, contract, and end-to-end testing.
- Experience with CI/CD and modern software delivery practices.
- Experience troubleshooting complex production systems using logs, metrics, traces, profiling, and other observability techniques.
- Strong debugging and root-cause-analysis skills.
- Demonstrated ability to independently drive technically complex projects from architecture through production.
- Demonstrated experience influencing technical direction and improving engineering practices beyond one’s own individual contributions.
- Strong written and verbal communication skills, including the ability to explain architecture and technical trade-offs clearly.
Mandatory Technical Skills
The successful candidate must have strong hands-on engineering experience with:
Java | Spring Boot | REST APIs | ReactJS | AWS
Candidates should be comfortable being assessed on both system-design capability and hands-on implementation depth in these technologies.
Preferred Qualifications
Experience in one or more of the following areas would be advantageous:
- High-scale commerce, e-commerce, pricing, payments, catalog, promotions, or transaction-processing platforms.
- AWS services and architectural patterns involving compute, storage, databases, messaging, networking, monitoring, and security.
- DynamoDB and/or Amazon RDS.
- Event-driven and asynchronous architectures.
- Redis or other distributed caching technologies.
- Kubernetes / Amazon EKS and containerized workloads.
- CI/CD platforms and automated deployment strategies.