Principal Software Engineer in Swiggy not only contribute to the high-level Architecture of several systems but also contribute to the overall success of the product by driving technology and best practices in engineering in their respective teams.
They establish technology vision for respective teams and demonstrate how to solve a deeply complex and hard technical challenge, and help communicate that vision upward (CTO), inward (peers and engineering team) and outward(product & business teams)
Job Responsibilities :
- Coming up with best practices to help the team achieve their technical tasks and continually thrive in improving the technology of the product/team.
- Experiment with new & relevant technologies and tools, and drive adoption while measuring yourself on the impact you can create.
- Implementation of long-term technology vision for your team.
- Responsible for end to end architecture, high-level design/ low-level design of various systems and applications that you are assigned to.
- Creating architectures& designs for new solutions around existing/new areas.
- Decide technology & tool choices for your team & be responsible for them.
- Driving the adoption of best practices & regular participation in code reviews, design reviews, and architecture discussions.
What Do we look for?
- Technically hands-on, prior experience with scalable Architecture.
- Posses 12+ years of software engineering and product delivery experience, with excellent command over Data Structures & Algorithms.
- Exceptional coding skills in an Object-Oriented Programming language (Java Preferred).
- Strong problem solving and analytical skills.
- Experience with web technologies, PHP/Java, Python, Linux, Apache, MYSQL, Solr, and Redis.
- Good knowledge of distributed technologies, real-time systems of high throughput, low latency, and highly scalable systems.
- Experience with high-performance websites catering to millions of daily traffic is a plus.