- Company Name
- Opus Resourcing Ltd
- Job Title
- Senior Software Engineer Python/Distributed Systems
- Job Description
-
**Job Title**
Senior Software Engineer – Python / Distributed Systems
**Role Summary**
Lead backend architect driving the design, implementation, and maintenance of high‑performance core services for a real‑time video collaboration platform. Works within a globally distributed engineering team, leveraging Python to build scalable, asynchronous, and distributed systems that serve hundreds of thousands of users worldwide.
**Expectations**
Deliver production‑ready code that meets stringent performance, reliability, and security standards. Collaborate cross‑regionally, contribute to architecture decisions, and uphold rigorous testing and quality practices. Own end‑to‑end feature delivery, from design to production support, and mentor teammates.
**Key Responsibilities**
- Design, develop, and maintain critical Python services for the real‑time video platform, prioritising scalability and low latency.
- Implement asynchronous, network‑centric components using asyncio, concurrent.futures, or equivalent patterns.
- Write comprehensive unit, integration, and system tests; champion test‑driven development and automation.
- Participate in code reviews, architectural discussions, and performance optimisation initiatives.
- Collaborate with product, frontend, and infrastructure teams to deliver features end‑to‑end.
- Troubleshoot and resolve production incidents, conduct root‑cause analysis, and implement preventive fixes.
- Manage CI/CD pipelines, containerisation (Docker, Kubernetes) and deployment to Linux or cloud platforms (AWS, Azure, GCP).
- Mentor junior engineers, promote clean code practices, and foster a culture of continuous improvement.
**Required Skills**
- Proficient in Python 3.x, with a track record of building high‑performance back‑end services.
- Deep understanding of asynchronous programming (asyncio, event loops) and network protocols.
- Familiarity with distributed systems concepts, message‑passing, and client‑server architectures.
- Comfortable working in Linux development environments; proficient with shell scripting, git, and build tools.
- Experience with virtualization/containers (VMware, KVM, Hyper‑V, Docker, Kubernetes) and cloud platforms (AWS, Azure, GCP).
- Strong background in unit testing (pytest, unittest) and integration/system testing frameworks.
- Excellent problem‑solving, debugging, and performance‑tuning abilities.
- Clear written and verbal communication in English.
- Interest or experience in systems‑level languages such as C, C++ or Rust.
**Required Education & Certifications**
- Bachelor’s degree in Computer Science, Software Engineering, or a related STEM discipline, or equivalent professional experience.
- Relevant industry certifications (e.g., AWS Certified Developer, Azure Developer Associate) or credentials in distributed systems are advantageous.