Software Engineer - Release Engineer

Bengaluru, Karnataka, India Full-time

Job Description

Being a consumer centric company, Grofers’ mission is to improve the quality of life of the customers by helping them save money on everyday purchases, and giving them the spending power they need.

 

As part of the Release Engineering team, you will work on optimizing engineering workflow through automation, tooling, and infrastructure. You will work closely with engineering teams across the company to help them move fast, and build reliable and scalable systems, thus enabling the organization to achieve its objective.


You can learn all about engineering at Grofers on our blog.

Responsibilities

  • Solve complex Cloud Infrastructure problems.
  • Drive DevOps culture in the tech organization by working with engineering and product teams.
  • Be a trusted technical advisor to developers and help them optimize their development, test, release and learning workflows.
  • Frequently collaborate with developers to help them learn how to run and maintain systems in production.
  • Drive a culture of CI/CD. Find bottlenecks in the software delivery pipeline. Fix bottlenecks with developers to help them deliver working software faster. Develop and maintain infrastructure solutions for automation, alerting, monitoring, and agility.
  • Evaluate cutting edge technologies and build PoCs, feasibility reports, and implementation strategies.
  • Create and deliver best practices recommendations, tutorials, blog articles, sample code, and technical presentations adapting to different levels of key business and technical stakeholders.
  • Work with engineering teams to identify and remove infrastructure/tooling bottlenecks enabling them to move fast.

Qualifications

Minimum qualifications:

  • Software engineering experience of 4+ years.
  • B.Tech. / B.E. degree in Computer Science or equivalent software engineering degree / experience.
  • Strong programming experience in one or more languages such as Python, Go, and/or Bash. It is important to us that you have worked as a developer before.
  • Strong experience in writing automated tests using any of the frameworks. It is important to us that you have written tests and enjoy writing tests.
  • Proficiency with Git or a similar version control system.
  • Proficiency with configuration management systems.
  • Proficiency with CI tooling such as Jenkins or TeamCity.
  • Experience in system administration tasks in Linux or Unix and familiarity with standard IT security practices (such as encryption, certificates, key management).
  • Good understanding of standard networking protocols and components such as HTTP, DNS, TCP/IP, the OSI Model, networking and load balancing.

Good to haves:

  • Experience with scalable networking technologies (such as Load Balancers, Firewalls) and web standards (like as REST APIs, web security mechanisms).
  • Experience with configuration management, deployment and orchestration technologies (such as  Ansible, Puppet, Chef, Docker, Kubernetes, Jenkins etc).
  • Experience supporting database systems like MySQL, PostgreSQL, MongoDB and/or Cassandra.
  • Familiarity with Containers and Container Orchestration systems would be a plus (such as Docker Swarm, Kubernetes etc)
  • Experience with Cloud service platforms (particularly AWS)
  • Experience with TDD, BDD, contract testing (Pact)