Skip to main content

Software Engineering Intern (Data Platform)

Terminal
📍 Toronto
Internship

Job Description

About Terminal

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.

For more info, check out our website: https://withterminal.com

Note: This role is only available to Toronto/GTA-based candidates

About the role

We're looking for a software engineering intern who's excited about building scalable data platforms. This is an opportunity to work on real production systems, contributing to the data platform that powers Terminal's API and handles everything from data streaming and storage to analytics at petabyte scale. You'll work closely with our senior software engineers, contributing to projects that directly impact how we process and deliver high-volume telematics data to our customers.

What you will do

  • Help build and optimize streaming and batch data pipelines that support our core product

  • Work on scalable storage solutions for handling petabytes of IoT and time-series data

  • Support implementation of data quality and data processing capabilities

  • Participate in code reviews and learn best practices for writing clean, maintainable code

  • Directly support and engage with our customers and partners

  • Collaborate with cross-functional teams to understand requirements and deliver solutions

  • Gain hands-on experience with modern data infrastructure technologies and AI tools

About you

  • Available for a 4-12 month internship on-site at our office in downtown Toronto, starting this upcoming fall or winter term

  • Currently pursuing an undergraduate degree in Computer Science or a related field

  • Completed at least 2 full years of undergrad (3rd+ year)

  • Completed at least 1 prior professional software internship

Required qualifications

  • Understanding of software patterns, data structures, algorithms, and basic system design

  • Experience with a compiled programming language like Java

  • Curious about large-scale data systems and real-time processing

  • Strong problem-solving skills and eagerness to learn

  • Able to work collaboratively in a team environment

Bonus points

  • Coursework or projects involving databases, distributed systems, or data processing

  • Personal or academic projects involving data pipelines or stream processing

  • Exposure to cloud platforms (AWS, GCP, or Azure)

  • Experience working with Java

  • Exposure to technologies similar to Kafka, Flink, or Spark

Technologies you’ll learn

  • Languages: Java, Python

  • Framework: Spring Boot

  • Storage: Apache Iceberg, Apache Doris, AWS S3

  • Streaming + ETL: AWS Kinesis, Apache Kafka, Apache Flink, Apache Spark

  • Infrastructure as Code: Pulumi, AWS CDK

  • CI/CD: GitHub Actions

The interview process

  1. Coding Challenge (30 min) + Project Showcase (30 min)

  2. Cultural Loop (60 min)

Optimize Your Resume for This Job

Get a match score and see exactly which keywords you're missing

Optimize Resume

Job Details

Category
Software
Employment Type
Internship
Location
📍 Toronto (Hybrid)
Posted

About Terminal

Terminal is a talent solutions company that specializes in building remote global tech teams. The company handles recruitment, onboarding, and management of engineering teams to help businesses scale efficiently. Terminal provides global talent acquisition, market insights, operational support, and a connected tech community.

Found this role interesting?

Software Engineering Intern (Data Platform)
Terminal
Apply