SeniorStaff Software Engineer, Data Platform
Department:
Job Summary
Terminal builds telematics data infrastructure for the commercial fleet industry. Commercial auto insurers and fleet software companies including industry leaders like Intact Insurance depend on our platform to access GPS speeding and vehicle data from 330 telematics providers. We recently raised our Series A led by Battery Ventures and are backed by Y Combinator Golden Ventures Penske Transportation Solutions and Intact Private Capital. Our team works together in person in Toronto combining early-stage speed with late-stage maturity while processing many terabytes of vehicle data every day.
For more on working at Terminal see our careers page at that this role is only open to Toronto/GTA-based candidates.
Were looking for an engineer who thrives on building scalable platforms and enjoys tackling hard data and backend challenges. This isnt a data engineering role: youll design and optimize the data platform that powers Terminals unified API owning everything from streaming and storage to analytics and moving terabytes of IoT and time-series data per day. Its core systems engineering and youll work across both data and backend to build the critical systems that drive the products data flows end to end.
Youll partner with engineering teams and customers to build the right abstractions and reusable components that scale with our growth help set architectural direction and shape how the platform evolves. You know when to slow down to build the right thing versus ship a fast experiment. This is a role with real ownership where your judgment raises the bar for the team and directly shapes how customers succeed with high-volume telematics data.
Design and build the streaming and batch pipelines (replication analytics and enrichment) that feed the product and API.
Build the storage systems that need to scale to petabytes of time-series data and stay fast under load.
Improve the primitives the platform runs on: data quality lineage stream/batch processing and the high-availability infrastructure enterprise customers depend on.
Shape how we build not just what we build: the AI-powered tooling that lets the platform increasingly improve itself.
Work on open source technologies contributing back when we see the opportunity.
Make the architectural calls that keep the platform ahead of its scale.
Work day to day in Java and Python.
A strong engineer whos built and owned production platforms or distributed systems at real scale and can drive an architecture to done without being managed.
Writes clean maintainable code with a solid computer science foundation.
Hands-on experience with big-data frameworks building streaming or batch systems that stay correct and fast as data grows from TB to PB.
Depth in distributed systems: you anticipate failure modes and design for them up front.
Platform builder: you make the systems other teams stand on and design them to last.
Sound judgment in ambiguity: you scope before building and know when to go deep on details VS ship fast experiments.
Strong in Java or another JVM language (Scala Kotlin) or confident to pick it up fast.
The ideal candidate brings deep experience with data streaming and processing (Kafka Flink Spark warehouses lakehouses) though it isnt required. Strong platform distributed-systems or backend engineers wholl ramp into the data side are welcome.
You dont need to check every box. If youre missing some but confident youll close the gap quickly apply anyway.
Open source contributions (especially relating to data processing and storage)
Lakehouse storage (Iceberg Delta Paimon Doris).
Orchestration and workflow engines (Temporal Step Functions).
Time-series and spatial (spatio-temporal) data.
In person 4 days/week downtown Toronto. We build better together in a room.
High ownership. Everyone takes projects end-to-end and helps shape the product.
Platform thinking. Our work is the foundation that other teams build products on. We design capabilities that compose into features and accept complexity so others dont have to.
Talk to customers. Whether its a paying customer or an internal team we talk to our customers to understand their problems before we ship solutions.
Languages: Java Python; TypeScript and is also used across Terminal
Framework: Spring Boot
Storage: AWS S3 Postgres DynamoDB Apache Doris Apache Iceberg Redis
Streaming: AWS Kinesis Apache Kafka Apache Flink
Orchestration: Temporal Step Functions
ETL: AWS Glue Apache Spark
AI: LangGraph Deep Agents Bedrock
IaC: Pulumi
We hire for this role at two levels and calibrate to where you come in. All compensation is base salary plus meaningful equity.
Senior: base $200000 to $255000 equity
Staff: base $235000 to $295000 equity
Strong compensation and equity packages.
Brand new MacBook and computer equipment.
Top-tier health/dental benefits and a flexible healthcare spending account.
Personal spending account for professional development fitness and wellness.
Four weeks paid time off statutory holidays.
In-person culture with an office located in downtown Toronto.
Intro call with the CTO (30 min)
Virtual system design (60 min)
On-site technical loop (120 min)
On-site culture loop final (180 min)
Accessibility and accommodation
Terminal is committed to an accessible hiring process. If you need an accommodation at any stage applying interviewing or completing an assessment email and we will work with you to meet your needs. Accommodations are available under the Accessibility for Ontarians with Disabilities Act (AODA) and the Ontario Human Rights Code and requesting one will never affect how your application is considered.
Required Experience:
Staff IC