PAIR PROGRAMMING INTERVIEW
The interview will be a refactoring exercise, whilst we cannot give you explicit instructions, please attempt the exercise in the same way you would developing a piece of real,production-ready code.
The interviewer will begin by talking about the code – the code is functionally complete; your task will be to improve it, whilst explaining what problems your refactoring solves.
Before the interview
- Have a Python friendly IDE such as Pycharm (or whatever you are most comfortable with) installed and working
The IDE must be able to run tests during the exercise
Have a Github account setup to download the code and project that you will be working on with the interviewer
If you do not have one, please set one up as we will not be able to proceed without it
During the interview
- Ask as many questions as you need before you start
- Test the code before you start and test throughout the coding exercise
If you have any questions about the exercise, or about the problem statement you are given, make sure you ask your interviewer for clarification
As you are programming, try and explain your logic / approach to solving the problem / edge cases as you go
If you are stuck, or need some advice, please do not hesitate to ask your interviewer for some guidance. Interviews can be stressful, and we are here to help
As always, you’ll have 5-10 minutes at the end of the session to ask any questions you might have.
SYSTEM DESIGN INTERVIEW
In this interview you will pair with a Senior Engineer to discuss a hypothetical Architecture and Systems Design problem that you would build to deploy onto. The exercise is interactive. You will be working alongside the interviewer to come up with a working solution. Ask as many questions as you feel are necessary to be successful in the interview.
Before the interview
Before the session, please familiarise yourself with an online drawing tool. We use Miro internally, but you can also use https://excalidraw.com/ (which is free and requires no registration).
Please also read our detailed Systems Design guide here: Systems Design Guide.
During the interview
You will be given a high-level problem statement
The problem is deliberately vague. You are encouraged to ask questions and clarify specifications
You will work with your interviewer to develop a working solution
You will sketch down your design using your drawing tool of choice
What we expect by the end of the session
Block diagram / workflow describing your solution
Explanation of trade-offs / choices in arriving at your solution
A working solution for a simple base case - this is more important than solving for all the complex scenarios
Please think about all factors you would take into consideration when designing a system. These incluce security, scalability, reliability, maintainability, monitoring / alerting, data lineage and data validation.
As always, you’ll have 5-10 minutes at the end to ask your interviewer any questions about the role and Tractable.
ML & STATS INTERVIEW
This is the final technical assessment in our process for this role. The interview is conversational, with a few questions designed to test your knowledge of ML and Stats within a business context.
In this session
- There is nothing to prepare in advance
We will give you a series of ML & Stats based questions to discuss
The questions are case study based, often with multiple solutions
The questions are often within a business setting - we’d like to see how you relate and apply your solutions to this context
We will be assessing your approach to solving the questions
Your approach and logic will formulate the basis of a discussion with your interviewer
Throughout the interview if you need help / clarification on a question, please feel free to ask - we are here to help
VALUES FIT INTERVIEW
This is the final stage in our recruitment process. The interview is generally conversational with questions to determine your fit with Tractable and our values. It is also designed to help you decide whether Tractable is the right fit for you.
We’ll assess you against several of our company values. Ensure you check our careers page to read up on these, and have some examples to hand to discuss with us: Tractable Careers.
During the session we will be assessing
1. Communication and collaboration:
We’re looking for collaborative people who will communicate well with the rest of the team as well as other stakeholders
You should be able to give and receive constructive feedback
Can you have difficult conversations? We don’t do everything right and need our people to tell us when we go wrong
2. Results obsession:
We are looking for people who are focused on results (over inputs) and understand the impact of their work. Not just on a technical level, but from a product benefit and customer impact perspective as well
We will ask about examples of challenging situations that show how you reacted to them, how you prioritised efforts and how you got through them
Sometimes the right result isn’t the one we want. So we'd also like to explore any relevant scenarios, what you learnt from them and what you would do differently next time
3. General fit:
Discuss your career motivations
Why did you transition roles?
What are you looking for?
What are your longer term aspirations?
We’ll also give you 5-10 mins at the end of the interview to ask any questions you might have about the role / Tractable.
As always, please let us know if you need any adjustments to be made for your interview process.