Contribute to the design and implementation of product features that align with technical strategy, quality standards, and functional requirements.
Develop clean, maintainable code along with corresponding automated tests.
Participate in release planning, providing reliable estimations and delivering work that meets scope and quality expectations.
Engage in code reviews and other collaborative engineering practices.
Take part in daily standups, sprint ceremonies, and retrospective discussions.
Participate in security reviews of new development to help ensure compliance with Sophos security requirements and industry best practices.
Troubleshoot and resolve issues, escalating complex problems to more senior team members when appropriate.
Essential
Practical experience building backend services or APIs in a modern programming language (TypeScript preferred but not required).
Good understanding of API design, request/response lifecycles, and common integration patterns.
Experience writing clean, maintainable code accompanied by automated tests.
Awareness of secure coding practices, authentication/authorization concepts, and cloud native development.
Ability to debug production issues methodically and collaborate with senior engineers on complex problems.
Solid problem-solving, communication, and teamwork skills.
Bachelor’s degree in computer science, Software Engineering, or equivalent practical experience.
Desirable
TypeScript backend development experience using Node.js/TypeScript for API or service layer development, understanding runtime considerations, type driven development, dependency injection, and module architecture.
Microservice architecture familiarity with distributed system concepts such as service boundaries, interservice communication, API gateways, observability, logging/metrics, configuration management, and handling failure modes gracefully (timeouts, retries, backoff, circuit breakers).
PostgreSQL (RDBMS) understanding of relational schema design, indexing strategies, query optimization, transactions, database migrations, and ORMs or query builders commonly used with TypeScript (Prisma, Drizzle, Knex).
Experience with containerized development workflows (Docker and Kubernetes), cloud platforms, or serverless components.
Knowledge of messaging systems or event-driven patterns is a plus.
Experience with automated testing and CI/CD pipelines.