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 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.
Works within a multidisciplinary team or in an environment in which multidisciplinary teamwork is carried out.
Is primarily responsible for the production (or technical configuration) of software applications.
The range of tasks includes the following:
the analysis and design of the application (or the technical configuration).
coding applications and/or package integration in one programming languages, scripting languages and frameworks:
Java Spring Boot, NodeJS, etc., functional programming in Scala )
Object-Oriented programing and engineering principles like SOLID
Autonomous services oriented RESTful API services and performance tuning largescale apps
Database systems, with knowledge of SQL and NoSQL stores (e.g. MySQL, Oracle, MongoDB, Couchbase, etc.)
Integrate with JavaScript frameworks, such as React, Angular JS, etc... is a plus
Continuous Delivery (Compile, Build, Package, Deploy).
Test-Driven Development (TDD) and test automation (e.g. regression, functional and integration tests); debugging and profiling.
software configuration management and version control.
Be an active participant in grooming and planning, to ensure that acceptance criteria are clear
Sit together with designers, SMEs and Product Owner while user stories are developed, bringing input
Work in an agile/scrum environment, meeting sprint commitments and contributing to the agile process
Maintain traceability of testing activities
Uses his/her technical expertise and experience to contribute to all sprint events (planning, refinements, retrospectives, demos)
Consults with the team about what is needed to fulfil the functional and non-functional requirements of the IT product to be developed
Develops the IT product, performs the unit test in line with the customer's wishes and IT area's internal ambitions and reviews colleagues' IT products.
Experience as a backend developer in common languages and frameworks (Java Spring Boot, NodeJS, etc.), functional programming in Scala
Deep knowledge of Object-Oriented programing and engineering principles like SOLID
Significant experience writing and utilizing autonomous services oriented with RESTful API services and performance tuning largescale apps
Experience with database systems, with knowledge of SQL and NoSQL stores (e.g. MySQL, Oracle, MongoDB, Couchbase, etc.)
Experience integrating with JavaScript frameworks, such as React, Angular JS, etc... is a plus
Ability to write effective units, integration, and API tests
Nice to have knowledge of immutable infrastructure, infrastructure automation and provisioning tools
Strong understanding of Agile methodologies
Experience as a Developer on a cross-functional agile team preferred
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
Wants to unleash inner self-starter and work in an environment that fosters entrepreneurial minds
Believing in culture of brutal transparency and trust
Open to learning new ideas outside scope of knowledge
Location
Karachi, Lahore
Work Type
On-site
Schedule
full-time, contract
Status
Active Hiring