Michaela Condari

Picture of me

Computer Engineering Student at the University of Waterloo

All About Me

I am a 3A Computer Engineering candidate known for my detail-oriented approach, strong work ethic, and passion for technology. During My university career I have earned both the President’s Scholarship of Distinction and the Embark FIRST Alumni scholarship. I was also elected class representative in both my 1B and 2A terms.

During my first co-op at the University of Waterloo, I explored the applications of VR in education and expanded my skills in Unity and C#. Additionally, I refined my UI design abilities through developing projects for The Meta Oculus 2 and 3 VR headsets. To learn more about this take a look at the demo video under the "Projects" tab of this website!

During my second co-op, I worked as a Platform Software Developer at Ford Motor Company Canada in Kanata, just outside of Ottawa, where I was part of the Data Collection Platform team. I mainly used C++ to improve unit test coverage and reliability using GTest and GMock. I also wrote Bash scripts to automate the execution of unit and component tests, with optional line coverage reports using gcovr. I also got hands-on experience with Boost.Asio, using features like timer factories and I/O contexts to manage asynchronous tasks more efficiently. Along the way, I deepened my understanding of the C++ STL, working with templates, macros, smart pointers, callbacks, and more. It was a great opportunity to grow my skills, contribute to meaningful improvements, and learn from a fantastic team.

For my third co-op, I went back to Ford and worked on the Token Manager team, focusing on secure token handling for automotive embedded systems. I fixed several tricky race conditions in multi-threaded unit tests using C++ concurrency tools like std::promise, std::future, and condition variables, which helped reduce CI failures by about 40%. I also used Valgrind to find and fix memory leaks and invalid accesses by improving how objects are managed during concurrent runs. On the software side, I improved the CLI argument parsing for a console app that handles security tokens, making it more robust against bad input to prevent crashes. I worked on better handling of token failures over-the-air by adding asynchronous sending and testing it on actual devices. Besides software, I helped set up hardware-in-the-loop test environments by assembling ECUs, debug tools, and CAN interfaces, and flashed devices using Putty. I optimized Makefiles for running tests across multiple platforms and improved test coverage by 5%. I also tested Ethernet and socket communication to ensure the system handles network issues well. This co-op really helped me grow my skills in C++ concurrency, embedded systems, and automotive software testing.