Role Summary
As a member of the Sophos Agentic AI team, the Software Engineer II designs, builds and supports reliable AI-powered cybersecurity capabilities. The role applies sound software engineering practices to moderately scoped, varied assignments, collaborating with experienced engineers and cross-functional partners to deliver secure, scalable services and customer value.
What You Will Do
- Work with engineering leads, architects, product management and delivery partners to understand requirements, clarify technical options and contribute to implementation plans.
- Design, develop, test and maintain cloud-native microservices and REST APIs using Python and relevant frameworks such as FastAPI , FastMCP and Temporal.
- Contribute to LLM-powered applications and the supporting services used to develop, deploy, observe and operate them.
- Integrate data technologies such as PostgreSQL, Redis and Elasticsearch, following established patterns for performance, reliability and maintainability.
- Deliver assigned features or components through design, implementation, code review, testing, deployment and production monitoring, seeking guidance for complex or unfamiliar work.
- Investigate and resolve defects in distributed systems using structured analysis, logs, metrics and appropriate debugging tools.
- Contribute to containerised and event-driven services using Docker, Kubernetes, CI/CD pipelines and AWS services.
- Write clear, maintainable and well-tested code, and participate constructively in peer reviews and technical discussions.
- Collaborate with Product Management, DevOps, Quality Assurance, security specialists and other developers to manage dependencies and support iterative delivery.
- Apply secure development, data-handling and responsible AI practices, including appropriate verification of AI-assisted outputs and use of approved tools and accounts.
- Share knowledge with colleagues, contribute to team documentation and provide task-specific support to less-experienced team members where appropriate.
- Keep technical knowledge current in software engineering, cloud technologies, Generative AI and cybersecurity, and suggest practical improvements within the team’s scope.
What You Will Bring
- Degree in Computer Science, Software Engineering or a related discipline, or equivalent practical experience.
- Relevant professional software development experience delivering production code within a collaborative engineering environment.
- Practical development of web services, microservices or REST APIs using Python or a comparable language.
- Involvement across the software delivery lifecycle, including design, implementation, testing, deployment and operational support.
- Application of structured problem-solving to varied technical issues within established engineering standards and practices.
- Sound Python development skills and the ability to produce readable, maintainable and tested code.
- Working knowledge of API development and a framework such as FastAPI, Flask or Django.
- Working knowledge of AWS services and cloud-native application concepts.
- Working knowledge of Docker, Kubernetes, CI/CD and Unix/Linux development environments.
- Ability to use SQL and data stores such as PostgreSQL or Redis; ability to learn related platforms such as Elasticsearch.
- Ability to analyse technical information, exercise judgement within defined practices and escalate appropriately when risk or complexity exceeds role scope.
- Clear written and verbal communication, with the ability to work productively across engineering and product disciplines.
- Ability to use approved AI-assisted development tools responsibly, verify generated outputs and protect confidential, customer and personal data.
- Contribution to Generative AI, large language model or AI-enabled software solutions.
- Work with cloud-native or distributed systems in a cybersecurity, data-intensive or similarly complex domain.
- Task-specific coaching, knowledge sharing or support for peers or less-experienced colleagues.
- Knowledge of Temporal, event-driven architectures or large-scale data processing.
- Understanding of AI agent patterns, retrieval-augmented generation or conversational AI systems.
- Knowledge of cybersecurity products or concepts such as XDR, MDR, SIEM or SOAR.
- Familiarity with AI-assisted coding tools such as Claude Code, Cursor or Codex.