Job Purpose | The Back End developer is responsible for the system to work behind the scenes. Their role is to integrate the application with all required systems and services and provide clean and easy to use API for the frontend part of the system. Although their work is usually hidden from the user they bear the full responsibility for the application functionality, performance and scalability. They know how to write clean modern APIs, integrate with legacy systems and work with databases. |
Key Result Areas | · Design and develop the business logic and backend systems of the product · Work closely with frontend developers to design and develop functional, performing and complete APIs · Decipher existing companies’ software systems and be able to hook in application to applicable data sources · Write both unit and integration tests, and develop automation tools for daily tasks · Develop high quality, well documented, and efficient code · Challenge ideas and opinions to avoid pitfalls and inefficient solutions. |
Knowledge, Skills and Experience | · 6+ years of experience as a backend developer in Java Spring Boot programming · Deep knowledge of Object-Oriented programing and engineering principles like SOLID · Significant experience writing and utilizing autonomous services oriented RESTful API services and performance tuning largescale apps · Experience in designing and Developing BPM Workflows (eg: Camunda) · Translate workflow steps into business process activities and nested processes · Have primary responsibility for development of the BPM Development team · Implement process flows, integration services, business logic and user interfaces · Experience with database systems, with knowledge of SQL and NoSQL stores (e.g. MsSQL, Oracle, MongoDB, Couchbase, etc.) · Experience integrating with JavaScript frameworks, such as React is a plus · Ability to write effective unit, integration, and API tests · Nice to have knowledge of immutable infrastructure, infrastructure automation and provisioning tools · Strong understanding and experience in building, deploying, and managing modern applications in cloud computing environments and CI/CD practices. · Strong communication skills with ability to communicate complex technical concepts and align organization on decisions. · Sound problem-solving skills with the ability to quickly process complex information and present it clearly and simply · Utilizes team collaboration to create innovative solutions efficiently · Passionate about technology and excited about the impact of emerging/disruptive technologies · Believes in culture of brutal transparency and trust · Open to learning new ideas outside scope or knowledge |
Job Category: Java Developers
Job Type: Full Time
Job Location: Karachi