Senior backend & Devops Engineer
Role details
Job location
Tech stack
Job description
Vizzia's IoT platform is what lets operations teams monitor the fleet of cameras deployed across French local authorities, get alerted when something breaks, and intervene before it impacts a city. FleetAPI, device provisioning, the routing and monitoring services - these are the backend systems that carry the day-to-day product. 250+ local authorities now rely on Vizzia to keep their streets clean and safe. As the fleet grows, the backend services that power monitoring, alerting and intervention need a dedicated owner: someone who ships robust APIs, keeps the services reliable in production, and makes the underlying AWS infrastructure evolve when the product needs it to. You will join a 4-person team (Tech Lead, PM, one engineer, one incoming full-stack hire) reporting to Wilfried as Tech Lead. Your mission: develop, maintain and evolve the backend and cloud services of the IoT platform - with the backend side as the core of your day-to-day, and the cloud side as the foundation it runs on.
What You'll Do
- Backend services and APIs for fleet monitoring, alerting and intervention
- Develop and maintain the backend services that give operations teams the tools to monitor the camera fleet, get alerted, and intervene.
- Ship APIs and backend services in Python / Node.js / TypeScript that are robust, tested, observable, and documented.
- Own the evolution of the existing APIs and the surrounding services as the product and the fleet grow.
- IoT verticals ownership
- Within the first 6 months, take ownership of one major technical domain : provisioning, fleet drift detection, or the routing & monitoring stack, with a measurable improvement on either reliability or operational quality.
- Work day-to-day with the OpenVPN multi-shard architecture and the router fleet: connectivity, segmentation, scaling the shards horizontally as the fleet grows.
- AWS architecture and Infrastructure as Code
- Handle the AWS architecture supporting the team evolves where the product needs it to: compute (Lambda, ECS, Batch), networking, storage, IAM.
- Arbitrate trade-offs (serverless vs container, SQL vs NoSQL) based on facts.
- Observability and production incident response
- Instrument, alert, and debug the backend services in production, with tooling like CloudWatch, Datadog or Grafana.
- Participate in the on-call rotation on your perimeter. Write post-mortems. Keep runbooks current. Every incident produces an artifact the team can use next time.
- Drive a measurable reduction of mean time to remediation on the services you own.
- Pairing and cross-team architecture
- Pair with the Tech Lead and the full-stack engineer from the spec stage - infra-aware design starts before code is written.
- Within 12 months, represent the team in cross-team architecture discussions (Platform, Data Platform, NetSec, AI) and participate to the technical arbitrations.
Requirements
Do you have experience in TypeScript?, * A least 4 years of experience in backend and cloud engineering, with at least 2 years on AWS in production environments.
- Strong backend development in Node.js / TypeScript or Python at production grade, services that are tested, observable, and hold up under load.
- Daily practice of Infrastructure as Code (CDK is what we use; Terraform or equivalent is a fine background), CI/CD, and observability.
- You have run real production incidents and can walk through a timeline, the decisions made, and the post-mortem that came out of it.
- Comfortable with both serverless and classic servers paradigms. You explain a technical position with concrete elements, hear a counter-argument, and update when it's justified.
- IoT, telecom, or distributed systems at scale (MQTT, AWS IoT Core, Kinesis, Step Functions) is a bonus., Contrat cadre and RTT (between 8 and 12 days per year depending on public holidays)
A Mac or PC depending on your preferences