Job description
We are looking for a passionate Software Development Engineer to develop, test, maintain and document program code in accordance with user requirements and system technical specifications. As a Software Development Engineer, you will work with other Developers and Product Managers throughout the software development life cycle.
Software Development Engineer responsibilities include analysing requirements, define system functionality and writing code in the companys current technology stack. The candidate is expected to be familiar with the software development life cycle (SDLC) process from preliminary system analysis to tests and deployment. Ultimately, the role of the Software Engineer is to build high-quality, innovative and fully performing software that complies with coding standards and technical design. Your goal will be to build efficient programs and systems that serve user needs.
To be qualified for this role, you should hold a minimum of Bachelor’s degree in a relevant field, like Computer Science, IT or Software Engineering. You should be a team player with a keen eye for detailed and problem-solving skills. If you also have experience in SDLC, Agile frameworks and popular coding languages (e.g., Java), strong computer science fundamentals we’d like to meet you.
Years of experience : 2 to 10 years.
Roles & Responsibilities
The overview of this position (based in Chennai, India) includes:
- Develops, enhances, debugs, supports, maintains and tests software applications that support business units or supporting functions. These application program solutions may involve diverse development platforms, software, hardware, technologies and tools.
- Participates in the design, development and implementation of complex applications, often using new technologies.
- Technology professional with experience in designing and managing the implementation of future looking, flexible and reusable, enterprise applications and components.
- Expert in translating business requirements into an application design that includes Data Model, Web Screens, Web Services, and batch processing.
- May provide technical direction and system architecture for individual initiatives.
- Serves as a fully seasoned/proficient technical resource.
- Deploy programs, gather and evaluate user feedback
- Recommend and execute improvements
- Create technical documentation for reference and reporting
- Develop software verification plans and quality assurance procedures
- Document and maintain software functionality
- Ensure software is updated with latest features
- Good interpersonal and technology understanding skills
- Evaluate open-source components and integrate into product pipeline
Skills and Qualifications
- Hands-on experience in analysis, design, coding, and implementation of complex, custom-built applications.
- Strong Java, development skills (JAVA, J2EE, STRUTS, SPRING, Web Services, Eclipse, UI screens, AngularJS, React.JS)
- Excellent debugging skills
- Strong knowledge on databases (MySQL, MSSQL Server and NoSQL databases)
- Understanding of various deployment servers (Apache Tomcat is a must)
- Understanding of OO skills, including strong design patterns knowledge is a must.
- Strong understanding in creating and maintaining web services.
- Understanding of the software development life cycle
- Experience with Implementation and release management activities
- Good understanding of unit/system and functional testing methodology
- Experience working in large transaction-based systems
- Knowledge of software best practices, like Test-Driven Development (TDD) and Continuous Integration (CI)
- Experience documenting technical functions
- Desire to contribute to the wider technical community through collaboration, coaching, and mentoring of other technologists.
- Experience in Linux based systems, development of shell-based scripts.
Job Training
- Training on the coding paradigms, guidelines, frameworks, usage of the applications would be provided by the engineers
- Periodic training sessions would be conducted by the technical architects in terms of technology and skills to be learnt
- Periodic, structured training would be provided on the applications Hours & Environment
- Typical 40 hours of work a week
- Depending on the requirements, work hours may have to be extended during the day, weekend

Similar jobs
- 1-5 years of experience in Java Development.
- Very good with DSA - Java programming.
- Hands-on experience in working with REST APIs & Web Services.
- Good Database design skills - SQL
- Write well-designed, testable, efficient code.
- Contribute to all phases of the development lifecycle.
Work Location : Bangalore
Work mode : Work from office.
Job Summary:
We are looking for a skilled and experienced Java Developer to join our team. As a Java Developer, you will be responsible for developing and maintaining our applications using Java, Spring framework, and other related technologies. The ideal candidate should have a strong understanding of object-oriented programming principles, as well as experience with a variety of technologies such as SQL, NoSQL, and cloud computing.
Responsibilities:
- Design, develop, and maintain our applications using Java, Spring framework, and other related technologies
- Write clean, efficient, and optimized code for applications
- Collaborate with cross-functional teams to understand user requirements and deliver high-quality solutions
- Develop and maintain backend systems using Spring framework
- Work with databases, including SQL and NoSQL
- Ensure code quality and maintain documentation
- Troubleshoot and debug applications
- Stay updated with emerging trends and technologies in Java development
- Work with other teams to deploy and maintain applications
Requirements:
- 3-7 years of experience in Java development
- Strong understanding of object-oriented programming principles
- Experience with Java, Spring framework, and related technologies
- Familiarity with databases, including SQL and NoSQL
- Knowledge of cloud computing is a plus
- Excellent problem-solving and debugging skills
- Strong communication and collaboration skills
- Ability to work independently and as part of a team
- Bachelor's degree in computer science or a related field
Key Skills:
- Strong proficiency in Java programming language
- Experience with Spring framework, including Spring Boot and Spring MVC
- Familiarity with cloud platforms such as AWS, GCP, and Azure
- Experience building RESTful APIs
- Knowledge of microservices architecture
- Familiarity with SQL and relational databases such as MySQL and Postgres
- Familiarity with NoSQL databases such as MongoDB and Redis
- Experience with messaging systems such as Kafka and RabbitMQ
- Experience with containerization tools such as Docker and Kubernetes
- Understanding of software development principles and experience with SDLC methodologies
- Experience with Git version control and build tools such as Maven and Gradle
- Familiarity with front-end technologies such as Angular and React is a plus
- Strong problem-solving and analytical skills
- Good communication and interpersonal skills
- Ability to work independently and take ownership of tasks
- Experience with test-driven development and unit testing frameworks such as JUnit and Mockito
- Familiarity with CI/CD tools such as Jenkins is a plus
- Familiarity with caching technologies such as Redis is a plus
- Working knowledge of design patterns and software architecture principles is a plus.
Responsibilities:
- Hand on experience in Golang/Python/Ruby on Rails /Node.Js
- Must have at least 1+ years of experience in Team Handling
Solid understanding of Spring and Spring Boot Framework
Experience with NoSQL DB, preferable MongoDB
Experience working with Agile Methodology and BDD Framework
Experience with Microservices Architecture
Experience with Hibernate and Spring.
- Experience with Spring-boot, spring MVC
- Experience with all phases of the Software Development Lifecycle, including system analysis, design, coding, testing, debugging and documentation
- Teamwork & collaboration skills to work across organizations
- Problem solving skills to develop quick yet sound solutions to resolve complex issues
- Programming Language(s): Java, J2EE, JSON, HTML, DHTML, HTML 5, XML, EXTJS.
- Experience with XML/HTTP and Web Services
- Experience with HTML, JSP, CSS, JQuery / Ajax / JSON,
- Experience /Knowledge of Angular, React.
- Experience building J2EE based Web Applications
- Experience with MySql.
• You will design high level architecture solutions, write high quality code, do code reviews
• You will take ownership to run and maintain the services in Cloud infrastructure
• You will continuously evaluate relevant technologies, influence and drive architecture and design discussions
You must have
• Strong desire to work at an early stage startup
• Strong desire to learn and improve yourself every day
• Strong hands-on development experience
• Proficiency in Computer Science fundamentals – object oriented design, data structures, algorithm - design, and complexity analysis
• Strong knowledge of sql/nosql databases
• Strong experience in developing Rest APIs
• Hands-on experience in developing and deploying MicroServices
• Experience with designing scalable architecture
• Strong knowledge of git
• Experience with redis, memcache
• Experience with Kafka, RabbitMQ
• Experience with ElasticSearch, Solr
• Experience with running applications in production, CI/CD
• Experience with performance tuning
• At least 2 year experience in leading a small team of developers
It would be nice if you also have
• Experience with Google Maps or similar technologies
• Experience with geospatial applications/libraries
Qualification & Experience:
- Bachelor of Engineering, preferably in Computer Science/or related fields or Masters, from a premier college
- 2 to 6 years overall software development experience
- Proven hands-on Software Development experience
- Ability to work with an agile mindset
- Having a polyglot mindset to think beyond one programming language/framework to choose the right tech stack for the right problem and exhibit learnability to pick up new technologies
- Proven working experience in Java development/Python development with reasonable exposure to Python/Java respectively or willingness to learn Python/Java
- Hands on experience in designing and developing applications using Java EE platforms/Python Frameworks
- Object Oriented analysis and design using common design patterns
- Good Understanding of Data Structures & Algorithms
- Hands on multi-threading
- Experience in the Relational Databases, SQL and ORM technologies (e.g. JDBC, JPA2, Hibernate, Django ORM)
- Experience with test-driven development










