For resources regarding all positions, see our resources page
There are four Directors, one each for the Software, Electrical, Mechanical, and business Divisions. A Director is responsible for overseeing all of their Groups. This includes defining goals of the Groups, with help of the Group Managers, and ensuring goals and deliverables are being met, with guidance from the Team Captains. As a Director, you are the line of contact from your Groups to other Directors and the Team Captains. In this role, you will gain the widest breadth of knowledge about autonomous vehicles than any other role by collaborating with Group Managers to form high-level solutions. Excellent communication and leadership skills are required with extensive technical knowledge as an asset for technical Groups. The ideal candidate will possess strong technical and interpersonal skills.
There is one Manager for each Group outlined in the sections below. As a Manager, you will be responsible for managing your Groups' members and becoming an expert in the autonomous vehicle topics covered by your Group. Working with the Directors, you will develop deadlines, goals, and high-level solutions for your Group. You will also be heavily involved in the technical work done by your Groups' members. To run a successful Group, you must possess strong leadership and communication skills. A technical background in the field or similar is highly desirable, at the very least a strong will to learn. Expect weekly meetings with Directors and your Group meetings at minimum.
Only the Software Division has Technical Leads. There are multiple Technical Leads in each group. Technical Leads are in charge of fulfilling one or more Key Results of an Objective, which are specific measures used to track the achievement of that Objective. As a tech lead, you will be responsible for research, architecture, maintaining technical documentation, creating tickets, reviewing pull requests, and training core members.
As a Core Member on WATonomous, you will be responsible for making the autonomous vehicle come to life. Without you, the vehicle would not be possible. You are to work closely with your Group to produce a final product and assign each other responsibilities with the help of your Group Manager. One weekly planning meeting and two weekly work sessions with your Group are to be expected as a minimum, at a time and day agreed upon with you and your Group. A team player that can demonstrate commitment and willingness to learn is required, and related technical skills are highly preferred
Core Members will be placed in Groups based on their skills, experience, and interests.
The Perception Group is responsible for processing camera, LIDAR and radar sensor data to identify objects of interest (eg. road lines, traffic signals/signs, obstacles etc). Members will research and develop object detection and classification algorithms, experiment with existing open-source libraries, and work with other teams to integrate the Perception module into the software system. Members will gain experience working with machine learning, computer vision, point cloud data processing, system integration, ROS, OpenCV, C++, and Python.
The Perception Group is broken down into five Squads: Object Classification, Roadline Detection, LiDAR Object Detection, Camera Calibration, and FPGA. Perception Group members frequently move to different Squads, based on what work is prioritized by the Manager.
The Processing group is responsible for taking the disparate data sources coming from Perception, as well as HERE HD Maps, and forming as accurate a picture of the surrounding environment as possible. Members will be responsible for developing algorithms to develop associations of detections across different sensors, tracking objects over time, predicting their positions in the future, eliminating false detections, and error correction. Processing members will gain experience in working with C++, ROS, and statistical methods such as Kalman and particle filters.
The Processing Group is broken down into three Squads: High Level Data Fusion, Object Tracking, and HD Maps. Processing Group members frequently move to different Squads, based on what work is prioritized by the Manager.
The Path Planning Group is responsible for handling decision making in different situations including collision avoidance, automated emergency braking, intelligent routing, four way stops, protected intersections, parking, lane changes, speed handling, and much more. Members will be responsible for engineering low-latency real-time planning, controls, and probabilistic decision making algorithms and simulators. Path Planning members will gain experience with building performance-oriented C++ code, path planning and controls algorithms, and real-world applications of mathematical concepts such as linear algebra, calculus, differential equations, computational geometry, graphics, and controls systems.
The Path Planning Group is the most volatile. The Group is is broken down into many Squads, which pop up and die out frequently as the competition moves from year to year. Some examples of Squads are: Costmap Generation, Trajectory Planning, Feedback Controllers, Simulation, Behavioral Planner, etc... Path Planning Group members frequently move to different Squads, based on what work is prioritized by the Manager.
The Infrastructure Group is responsible for creating the tools needed to integrate and support the modules of all the other groups. Members will be working on setting up continuous integration, maintaining and improving the development and production (in-car) environments, and implementation of various visualizations and tools to support the other groups, both in their local environment and when testing in the car. Infrastructure members will gain experience working with technologies such as Docker, ROS, Python and C++.
The Infrastructure Group is broken down into three Squads: Workspace Virtualization, Continuous Integration, and VIZ Tooling. Infrastructure Group members tend to stay on the same Squad, since Squad domain experience is not as transferable compared to the other Groups.
The Sensor Interfacing Group is the core team in WATO that deals with how all our various sensor softwares and drivers are organized in our codebase. This involves managing our source control, development, and overall integration / communication between all our sensors. If you are looking to get hands-on experience with industry grade sensors and work on software architecture within industry research level frameworks, this is the Group for you.
The Telemetry Group is responsible for creating a system to broadcast critical data from the car in real-time. This involves developing systems to monitor battery and compute rack thermals, visualizing various sensor output, and finding a reliable way to stream this information to individuals not physically in the car. Since this project is fairly new and being built from the ground up, there are a lot of opportunities to design electrical systems and software components from scratch. Overall, this project is a good mix of electrical, web, and general software development.
The Power Systems Group aims to centralize and streamline power distribution to sensors (radars, camera, LIDAR’s, etc.) and other electrical components of the car/competition elements (i.e. Traffic Lights). The Group's focus is to ensure all electrical systems are not just seamlessly powered but also easily scalable so that more sensors and I/O devices can be added as needed. If you are looking for experience with physical prototyping, soldering, and electrical board design, this is the Group to be part of!
The Radar Driver Group focuses on building a custom driver for the provided radar, in order to extract key metrics for the Perception Group, handle multiple radar connections and visualize the data through a point cloud. The driver is written in C++ and python, using ROS as the base in order to communicate with the rest of the car. This Group works with embedded practices and requires working with the radar hardware.
Sensor & Compute Mounting
The Sensor & Compute Mounting Group is responsible for the mounting of all external and internal sensors the autonomous vehicle requires, as well as the mounting of the entire compute system in the trunk of the vehicle. This group ensures everything remains intact will the vehicle is in motion. They perform analysis to verify the compute system will not fail due to thermal or vibrational issues.
These sensors include LiDAR, GPS, Cameras, and various other inputs for the autonomous system. The sensors group works closely with various electrical and software divisions to figure out what sensors are required, how to mount them, and how to ensure they will be able to withstand various environmental conditions.
Test Track Infrastructure
The Test Track Infrastructure Group is responsible for outfitting our Test Track with easily maneuverable environmental features, allowing WATonomous to simulate a wide variety of urban driving environments. Some features include: Traffic Light mounting and state control, Pedestrian Dummy mounting and motion control, and Lane Line surveying.
The Business Administration Group is responsible for overseeing the everyday administrative and logistic needs for both the technical and business divisions. This includes booking rooms, booking and following up with Test Track requests, and managing team health / engagement surveys. Additionally, the Group is responsible for planning and executing regular All-Hands meetings and organizing social events, as well as promotional and competition-related events.
The Marketing Group is in charge of engaging external parties such as students, faculty members, and sponsors on the team’s progress. The Group is responsible for using various methods of communciation including social media and campus events to build WATonomous as a brand. The Group creates videos, takes pictures, and crafts stories to educate Waterloo and beyond on Autonomous Vehicles and on our amazing team. Addittionally, they are in charge of fostering good relations with the University through events and communicaitons.
The Finance Group is responsible for ensuring that our funds are spent well on team activities. This Group approves and processes WATonomous' purchases and reimbursements. The Finance Group works with the UW finance department to manage the team's bank account. Also, the Finance Group manages and tracks the flow of funds throughout the whole term. Lastly, Finance collaborates with the Sponsorship Group to claim funding received from endowment funds.
The External Sponsorship Group is responsible for following leads of potential sponsors for both software/hardware donations as well as monetary sponsorships. The process begins with following up with a lead and ends with closing the deal. Sponsorship works closely with finance and internal affairs to ensure that all goals and deadlines are met.
Like External Sponsorship, but Internal, meaning that we pitch to UW's funding groups like Math Endownment Fund, Waterloo Engineering Endowment Fund, EngSoc, Dean of Engineering, etc...
The Design Group is responsible for creating and updating designs for WATonomous. This role involves creating attractive and user-friendly website layouts, promotional materials, swag, and car wraps. You’ll also have the opportunity to help set our own brand guidelines. We are looking for someone who loves working with Photoshop, Illustrator, InDesign, or Sketch!