
Canonical Python Developer Interview Questions
& Process
Real candidates share what happened, how many rounds they had,
and how the experience turned out.
Based on 30 interview experiences · FREE TO READ
Candidate interview experiences
First-hand accounts from people who interviewed at Canonical.
Python Engineer
The interview process at Canonical is quite involved, often taking weeks or even months to complete. It kicks off with a review of your application, then moves to a detailed written test that's specific to the role, plus a general aptitude test (like the GIA). If you're going for a technical position, there's a technical assessment too. After that, if you pass, you'll have several interview rounds. These include early talks about technical stuff and the specific field you're in, a chat with HR (they might dig into your personality with something like the PPA and discuss pay), and later interviews with the hiring manager and other senior people. Sometimes, you might even end up talking to the CEO as the last step. They really focus on how good you are technically and if you'll fit in with the team, using those written tests and assessments to make things fair for everyone applying from anywhere.
- Can you create a Python function that combines two sorted lists into a single sorted list?
- Regarding the Python function you wrote to merge two sorted lists, what is its time complexity?
Python Developer
I applied for a Python Developer role at Canonical and heard back quickly. The Hiring Manager liked my CV. First, I had to do a big writing task, a 3-page essay answering personal and professional questions, which took me about a week. They liked the essay. Then, I did a technical OA and passed all the tests. After that, I took the Thomas GIA test, completing all five parts. My scores were 'Acceptable' in four sections and 'Exceptional' in the numerical part. With good feedback on my CV and essay, passing the OA, and decent GIA scores, I was feeling good. But then I got a standard rejection email saying they were going with other people.
- Respond to a detailed set of personal and professional questions in a three-page essay.
- Successfully complete a technical Online Assessment (OA) that includes string-based Python questions.
- Complete all five sections of the Thomas GIA Test (General Intelligence Assessment).
Python Developer
This was the worst company I ever interviewed with. The entire process was automated; I went through 4 rounds without ever speaking to a person. It started with an email containing a lot of questions, many of which were irrelevant for a senior role, like how your high school classmates remember you. I didn't answer the questions I found irrelevant, which I suspect led to my rejection. However, these answers weren't reviewed until after I spent several hours on other tests. These included programming exercises on their platform and another test that seemed pointless, involving tasks like determining which of three numbers was furthest from the other two. I completed the programming exercises correctly and on time, and my performance report on the other 'skills' tests indicated I did better than most people on all 5 exercises. But this was all for nothing, as they could have rejected me based on my initial answers. The whole system is designed to save them time, even if it means I wasted many hours on nonsense when I should have been rejected earlier for not answering ridiculous and irrelevant questions.
- How do your high school classmates remember you?
Canonical Python Developer Interview Questions
Quoted word for word from Canonical interview reports.
“What differentiates the type() and isinstance() functions in Python?”
Read reports →“What's the distinction between a frozen set and a set in Python?”
Read reports →“Can you create a Python function that combines two sorted lists into a single sorted list?”
Read reports →“Regarding the Python function you wrote to merge two sorted lists, what is its time complexity?”
Read reports →“Could you explain the exact function of the /sbin/init process?”
Read report →“What's the difference between yield and return, and what are generators?”
Read report →“Can you explain the difference between a soft (symbolic) link and a hard link?”
Read report →“Can you write a program to determine if a number is a vampire number, given the definition and examples provided?”
Read report →“Can you explain what a decorator is in Python?”
Read report →Formats, difficulty and experience
Across all 30 Canonical interview reports.