Terminal Data Engineer
Terminal is Plaid for telematics in commercial trucking. Companies building the next generation of insurance products, financial services, and fleet software for trucking use our Universal API to access GPS data, speeding data, and vehicle stats. We are a fast-growing, venture-backed startup supported by top investors including Y Combinator, Golden Ventures, and Wayfinder Ventures. Our exceptionally talented team is based in Toronto, Canada.
Note: This role is only available to Toronto/GTA-based candidates
About the Role
We're looking for an engineer who thrives on building scalable data platforms and enjoys tackling complex backend challenges. This isn't just a data engineering role, you'll be designing and optimizing the data platform that powers Terminal's API, managing everything from data streaming and storage to analytics features at petabyte scale.
You should be comfortable navigating both data and backend engineering, with a solid foundation in software development. You'll work with advanced data architectures, including Iceberg, Flink, and Kafka, tackling large-scale challenges and contributing to core product development using Java and Python. If you're excited by the opportunity to shape a high-impact platform and tackle diverse engineering problems, we'd love to hear from you.
What You Will Do:
- Own projects aimed at enhancing data replication, storage, enrichment, and reporting capabilities.
- Build and optimize efficient streaming and batch data pipelines that support our core product and API.
- Design scalable storage solutions for handling petabytes of IoT and time-series data.
- Develop and maintain real-time data systems to ingest growing data volumes.
- Implement distributed tracing, data lineage, and observability patterns to improve monitoring and troubleshooting.
- Write clean, maintainable code in Java and Python for various platform components.
- Shape architectural decisions to ensure scalability and reliability throughout the data platform.
The Ideal Candidate Will Have:
- 3+ years of experience in platform engineering or data engineering.
- 2+ years of experience designing and optimizing data pipelines at TB to PB scale.
- Proficient in Java, with a focus on clean, maintainable code.
- Strong system design skills with a focus on big data and real-time workflows.
- Familiarity with lake-house architectures (e.g., Iceberg, Delta, Paimon).
- Experience with real-time data processing tools like Kafka, Flink, and Spark.
- Knowledge of distributed systems and large-scale data challenges.
- Strong problem-solving skills and a collaborative mindset.
- Nice-to-have:
- Experience working with orchestration / workflow engines (e.g., Step Functions, Temporal)
- Experience with serverless and/or event-driven architectures (e.g., AWS Lambda, SQS).
- Experience with Javascript/Typescript languages (for cross team work)
Tech Stack
- Languages: Java, Python
- Framework: Springboot
- Storage: AWS S3, AWS DynamoDB, Apache Iceberg, Redis
- Streaming: AWS Kinesis, Apache Kafka, Apache Flink
- ETL: AWS Glue, Apache Spark
- Serverless: AWS SQS, AWS EventBridge, AWS Lambda, and Step Functions.
- Infrastructure as Code: AWS CDK
- CI/CD: GitHub Actions
Benefits
- 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