Job Openings Backend Software Engineer

About the job Backend Software Engineer

Responsibilities

a. Backend API Development

  • Design, build, and maintain RESTful APIs using Java Spring Boot and Python-based supporting services.
  • Implement business logic across lifecycle management, asset tracking, configuration, and reporting domains.
  • Define API contracts using OpenAPI/Swagger.
  • Implement structured logging, monitoring, and alerting.
  • Write tests for the services you build.

b. Authentication and Security

  • Implement OAuth2, JWT, and API key-based authentication.
  • Contribute to a multi-tenant RBAC system governing API access and feature availability.
  • Work with Firebase Authentication for token validation and identity handling.

c. Data Layer and Persistence

  • Work with MySQL, MS SQL Server, and PostgreSQL.
  • Design schemas, manage migrations, write and optimize SQL queries and stored procedures.
  • Maintain data integrity and performance in a multi-tenant architecture.

d. Event-Driven and Microservices Architecture

  • Implement and extend microservices communicating via message queues (RabbitMQ / Amazon MQ).
  • Build asynchronous message-processing workflows with retry, dead-letter, and error-handling strategies.

e. Python Services and Tooling

  • Develop and maintain Python-based services for data processing, ETL pipelines, and backend automation.
  • Write Python scripts and utilities for operational tooling, data transformation, and integration support.

f. Third-Party Integrations

  • Integrate with external APIs from dealer management systems, telematics providers, and equipment
    manufacturers.
  • Handle authentication schemes, payload mapping, data transformation, and failure handling.
  • Document integration contracts and data flows.

g. IoT, GIS, and Mapping

  • Work with geospatial data, asset location services, and map-based interfaces.
  • Contribute to services powering geofencing, path replay, and location-based reporting.

Requirements

a. Technical

  • 6+ years building APIs with Java Spring Boot.
  • 3+ years working with Python in a backend or data-processing context.
  • Strong knowledge of OAuth2, JWT, OpenID Connect, and API security practices.
  • Experience with at least two of MySQL, MS SQL Server, and PostgreSQL.
  • Proficiency in OpenAPI/Swagger.
  • Experience with event-driven architectures and message queues (Kafka, RabbitMQ, SQS, or Amazon MQ).
  • Demonstrated experience writing automated tests (unit, integration, contract).
  • Experience with AI development tools such as Claude Code or Codex.

b. Environment and Tools

Services run on Linux in production. Comfortable in a terminal — reading logs, tracing processes, debugging environment-level issues. Knows local dev setup thoroughly: builds, containers, and why things break between local and staging.

c. Communication

Non-negotiable. Cross-timezone work with teammates in Pakistan, Indonesia, and the US. Mostly asynchronous — Jira, Confluence, Slack, pull requests. Advanced level of English. Plain-language technical explanations. Surface problems early. If you go quiet when stuck, this is not the right fit.

d. Ownership

Small team. Own problems end-to-end. Ask the right questions when requirements are ambiguous. Make architectural decisions when your lead is offline. Context-switch between feature work, production issues, and integration work without dropping things.