I've been wanting to write this blog post for a little while now, ever since I was done with the interview loop over at Canonical. Let me be very, very clear before I go into more detail on the interview process: never interview at Canonical, never work for them, don't even entertain the idea of seeing yourself getting a paycheck while working on tools that seemingly have zero traction outside of Canonical.
All of this happened during late November/most of December, right up to Christmas Eve.
With that out of the way, I'll detail exactly what the interview loop looks like, how it went, and exactly what went wrong.
This is a typical tech interview loop where you have a battery of questions and tests usually over a several week period. Usually they start off with an HR interview, then an hour long technical interview over the phone where they quiz you on a few technical questions, then a longer tech interview, and then you interview with a panel of about 4 or 5 managers. The biggest difference is that since Canonical mostly operates 100% remote, there's no commute over to a central office where you have to sit down and do a battery of interviews in a 4 hour period - instead, what they have you do is sit on an IRC channel and solve a few problems in a shared screen session, then do a separate interview with higher ups.
I don't remember having to solve anything using a particular programming language. The IRC session mainly tested my operations abilities with Apache, Ubuntu Linux, etc.
I got a provisional offer from them. I negotiated salary according to NYC market salaries for SREs, me and HR agreed on a figure, and even got a congratulations email from the hiring manager for nailing the interview. I was incredibly excited - the prospect of working on open source tools and learning more about OpenStack was pretty exciting, plus the benefits seemed pretty decent too (instead of getting a stipend for a work laptop you'd ordinarily have to hand in after leaving the company, you instead get an interest-free loan that's spread over the course of 3 months that's used to pay for your equipment and whatever else you need for your remote work space.
I did not know that Canonical requires a panel of executives to approve each senior level hire. They never mentioned that during the interview, and they didn't hold off on negotiating salaries until after that step - we negotiated and things looked to be fine.
They ended up rescinding my offer on December 22nd in the middle of my flight back to Seattle for the holidays.
What was a huge kicker for me was that I rejected a few other companies in anticipation of getting an offer from these guys (especially since timing was off for other companies to wait around for me), plus they sent me all kinds of signals saying that all they needed to do was get immediate managers sign off on the offer package, and it was all but assured that I'd get an official letter from them within a few days.
Anyway, I'm still sitting here with no job in 2018, and I'm wondering when the fuck I'll have a paycheck to pay for next month's rent. Thanks, Canonical.