
Michael works on Aha! Knowledge and helps onboard new engineers to the team. | Photo by Jodi B Photography
My name is Michael Shiel — this is why I joined Aha!
It helps to know a few languages as an engineer. But I am not talking about programming. What I mean is the ability to communicate with different audiences — translating nitty-gritty dev speak into something anyone can understand. This is a great way to build empathy for your users and teammates. And it elevates your work in return.
Products are complex. People are, too. I enjoy doing the work to understand both.
I went to school for computer systems engineering, with a specialization in unmanned aerial vehicles — or drones. It was novel technology at the time (well, before you could buy your own online), which was exciting to me. This became the topic of my master's thesis. While working on it, I connected with some people at the university who led me to start teaching a general engineering course.
My class was popular. I had about 2,000 students each semester. It was a major change from coding at a computer that pushed me to confront my fear of public speaking. I learned to explain complex concepts to people with varied levels of technical knowledge — both when lecturing to hundreds and coaching one-on-one. It was deeply rewarding to see my students succeed. They taught me a lot as well.
But after several years, my interest in academia waned. I had published plenty of papers and run enough simulations — I wanted to help people accomplish things with real products. This realization lined up with a cross-continental move from Australia to Canada, which made it a good time to start fresh.
I joined a small dental software company as a senior developer. The hands-on work was refreshing. I led major enhancements to reduce costs and boost our app's performance. Since the team was lean, I could see the immediate impact of the features I built and quickly refine things with customer feedback. After just two years, I took on a management position. I attribute this to my teaching background — I felt confident working with both product and people.
It was satisfying to find a balance between owning challenging technical work and helping others to achieve.
Eventually, organizational changes prompted me to seek a new role. I aimed for larger companies, expecting bigger product problems to solve. This proved to be true, but I encountered a more rigid structure than I was used to. I felt constrained in what I could contribute. I soon missed the agility of a streamlined development team.
As I considered what to do next, I found the Aha! engineering blog. I remember reading a post by Alex Bartlow on how Aha! runs PostgreSQL. He recommended "dedicating a Friday to curling up somewhere cozy with a cup of coffee and reading the fine manual." It was as humorous as it was in-depth. I took it as a good sign that at least one person at Aha! really enjoyed and cared about their work, and decided to apply.
I got to work on exciting features, like our delivery risks functionality, as soon as I joined the Aha! team. More recently, I have been focused on Aha! Knowledge. For example, I led the development of our AI-powered knowledge base search and automatic translation.
Whatever I am building, I appreciate having the flexibility and trust to figure out the best solution. But this independence does not mean isolation. I am not just churning out what gets added to the backlog — I also collaborate closely with our product team to determine the approach that creates a Minimum Lovable Product.
The Aha! team values technical excellence as much as genuine empathy for users and one another.
I even get to reprise my teaching role at Aha! by leading our engineering onboarding program. I can identify where folks might need more guidance and where they excel. While I do not plan on returning to an academic career, it is a great feeling to help our new team members start out strong and be part of an organization that values continuous learning.
That is why I joined Aha! — and why you should too.