Software Engineer

India, Haryana, Gurgaon

Full-time

experience
2 - 5 yrs

experience
2 - 5 yrs

Posted on: 4 months ago

Skills

java
spring boot
microservices
machine learning
mysql

1. Overview:

The Software Engineer will be a key member of our engineering team, responsible for designing, developing, and maintaining high-quality, scalable, and reliable software applications. The primary objective is to contribute to the development and improvement of our core product offerings, focusing on leveraging cutting-edge technologies to enhance performance and functionality.


2. Key Responsibilities:

  • Design, develop, and test new features and functionalities for our software applications.
  • Participate in all phases of the software development lifecycle, from requirements gathering to deployment and maintenance.
  • Collaborate with other engineers, product managers, and designers to ensure the successful delivery of projects.
  • Write clean, efficient, and well-documented code that meets industry best practices.
  • Troubleshoot and resolve software defects and performance issues.
  • Contribute to the continuous improvement of our development processes and tools.
  • Participate in code reviews and provide constructive feedback to colleagues.
  • Participate in on-call rotation for production support as needed.
  • Stay abreast of the latest technologies and trends in software development.

3. Technical Skills:

  • Proficiency in Java programming language.
  • Strong understanding of Spring Boot framework.
  • Experience with Microservices architecture and design patterns.
  • Experience with relational databases, specifically MySQL.
  • Experience with version control systems (e.g., Git).
  • Familiarity with RESTful APIs and API design principles.
  • Understanding of software testing methodologies (unit, integration, system testing).
  • Experience with CI/CD pipelines.

4. Required Qualifications:

  • Bachelor's degree in Computer Science, Software Engineering, or a related field.
  • 3+ years of experience in software development.

5. Skills & Experience:

We are particularly interested in candidates with proven experience in the following areas:

  • Java: Demonstrated proficiency in Java development, including experience with core Java concepts, data structures, and algorithms. Experience with Java concurrency is a plus.
  • Spring Boot: Significant experience building and deploying applications using Spring Boot, including experience with Spring Data JPA and Spring Security.
  • Microservices: Experience designing, developing, and deploying applications using a microservices architecture, including experience with service discovery, API gateways, and message queues.
  • Machine Learning: Experience with applying machine learning techniques to solve real-world problems is a significant advantage, but not strictly required for entry-level positions. Familiarity with relevant libraries (e.g., TensorFlow, scikit-learn) is a plus.
  • MySQL: Solid experience working with MySQL databases, including database design, query optimization, and performance tuning. Experience with NoSQL databases is a plus.