Description

Key responsibilities:
Participates in the entire software development cycle - requirements’ analysis, design and development, unit testing and documentation
Responsible for long-term code reusability and stability
Proactively identifies security, usability etc. issues and formulates strategies to resolve them
Works independently, without guidance, with broader overview on the project
Takes ownership for the delivery of complex application features and resolves key technical issues related to the assigned project
Complies with estimation process and is responsible for accurate personal estimates
Develops required software features, achieving timely and quality delivery
Delivers trainings and participates in knowledge sharing
Mentors new software engineers in the team
Integrates new technologies
Understands and follows the release processes in the company

Must Have:

Minimum 5 to 7 years of experience
Strong expertise on Java, Python.
Experience in building workflows/services using Snowflake.
Experience in leading code reviews.
Demonstrate understanding of SOLID principles.
Demonstrate understanding of TDD or BDD.
Good knowledge and experience of writing good unit tests.
Strong implementation design using cloud (AWS, GCP)
Microservices architecture, RESTful Webservices, NoSQL & SQL
Docker & containerization, CI/CD pipeline design & build
Event driven architecture, Kafka.
Use of tools such as JIRA, Git, GitHub
Strong communication skills
Ability to lead discussion and solve problems for the dev team
Provide guidance on inline technical documentation
Good to have:

Experience in Node JS.
Experience in Azure cloud.
Experience in GraphQL tools such as ApolloGraph or Wundergraph.
Experience with Serverless.
Experience in Terraform/Cloud Formation
Experience in orchestration tools such as Apache Airflow
Experience with troubleshooting using Grafana / Loki.
 

Education

Any Graduate