I love software development because it lets me use what I’m best at to improve the lives of the eventual users of my code, whether those users are customers, other teams within an organization, or future developers working with or on top of my code. I can work in the world of algorithms and information flow, and so it doesn’t matter that I can’t stay up all night for medical residency shifts or endure the wilderness in search and rescue. I can work together with people who can do those things. We can share our strengths - and mine is working with code.
Gathering requirements to know exactly what users want? No problem. Fixing bugs? I’m on it. Implementing new features? I’ll happily tackle complex problems to deliver efficient and maintainable solutions that surpass expectations. What would make your users satisfied? What would make them empowered?
Some of my past work includes:
- Leading game development teams with the University of Toronto Game Design and Development Club, often producing games in a single weekend for game jams such as TOJam and ROMJam;
- Delivering new tools and features within CAST Software’s flagship wysiwyg lighting software and their Vivien event planning tool;
- Upgrading internal libraries with more readable code for CAST Software, increasing developer productivity for the whole team;
- Programming a robot to detect defects in a pipe under hardware constraints, including learning the assembly language for the available microcontroller and fitting my program into its limited RAM; and
- Writing a paper for a cognitive science course that leveraged my knowledge of algorithm design and theory of computer science, and then presenting it to a wide audience at the 2018 University of Toronto ASSU Undergraduate Research Conference. (Evolved Inference and Beyond: Comparing Human Inferential Reasoning to Solomonoff Induction.)