Software Development Engineer

at TRUKKER (View all jobs) Bangalore / India

About the role

Java 8+, Spring Boot, Spring Cloud, Spring Security, OAuth2/JWT, Spring Rest, Spring Data (JPA), RabbitMQ/Kafka, GPS/GSM API (Google/Open Maps), Angular (or React or Vue), JIRA, GitLab, CICD, Unit & Integration Testing Frameworks, Mobile Exposure (desired)

We are looking for an SDE (Level 3), who will apply technical and analytical skills to design and develop a cutting-edge product for Trukker.com. The role requires you to work with product owners, customers, and operation teams to solve real-world problems faced by customers and finding business opportunities. Candidates with good verbal and written communications are preferred.

The key roles and responsibilities will include:

  • Work with the product owners and domain consultants on product requirements, analyse the business process, actors involved, data exchanged, systems interconnect and translate these into technical specifications.
  • Work with Product Owners and Scrum Master to ensure Sprints are delivered on time with desired quality. Note, quality measures have been defined and must be met. Must strive to improve them.
  • Be a part of the development team, work on critical modules such as product engine, message brokers, integration layers, data analytics and other key areas.
  • Ensure CICD pipelines processes are implemented and followed diligently, with desired testing and code coverage.
  • Perform periodic code reviews and ensure best practices are adhered in the solution.
  • Research and suggest new architectural/design patterns/principles and if required, create proof-of-concepts for the team.
  • Work with operations team on customer issues and ensure timely resolution with in-depth root-cause analysis and first-time fix done.
  • Drive a focus of continuous improvement culture within the team.
  • Coach and mentor the team.

Requirements and Qualifications:

  • Strong CS fundamentals are a must. (Data structures, Algorithms, OS, Databases).
  • Experience with all aspects of software development lifecycle and agile methodologies.
  • Must have good understanding in SOLID principles and why design patterns are used.
  • Java 8 and its emerging road map for 11.
  • Spring Boot & Starter, Spring Framework (Core, DI, IOC, Testing etc), Spring Data (JPA, REST, MongoDB, Redis), Spring Cloud (Consul, Feign, Circut Breaker, Cluster etc), Spring Security (preferably integration with OAuth2/JWT), Spring Rest, Spring Integration (REST/HTTP, MQ, Email), Spring for Kafka, Spring Batch, Async Processing.
  • Designing Microservices and having a sound understanding of benefits of microservices architecture over a monolith.
  • Authentication and authorization using OAuth2/JWT or just ACL using JWT.
  • Sound database knowledge in either MySQL or MariaDB. MongoDB or any other NOSQL would be a bonus.
  • Must know how to deploy services using CICD pipelines using tools such as Jenkins or other means.
  • Must understand Junit and MockMVC/Mockito frameworks and ensure developers implement proper unit and integration test cases in backend layer.
  • Working knowledge on newer JavaScript frameworks such as Angular, React or Vue is desirable.
  • Sound understanding in managing project artefacts using version management tools such as Git, GitLab, GitHub, SVN etc.
  • Ability to work on any of the following cloud infrastructure such as AWS, Azure, GCS, Digital Ocean etc.
  • Any skills in data analytics, machine learning, AI, NLP, and Deep learning concepts are a bonus, but not mandatory.
Trukker invites talents to join its team, if you've got what it takes contact us on career@trukker.com