cx-interview-questions

Questions

About this repo

This repo contains questions which are part of the ECS interview process.

This exercise is used as part of our interview process. This question is often updated. Please check that you have the latest version of the assignment before you begin your work.

Please do not attempt this question until you are asked, as you may be directed to implement only a single question or part of a question.

How to implement and submit your work

Please begin this exercise by forking the repo into your personal GitHub workspace. When you have finished your work, please email your contact at ECS with the URL of your forked repo.

Your work should be implemented in Python 3 or TypeScript. If you considering using any other language, please check with ECS first.

Try to do test driven development. We want to see the tests you've written and how they guided your implementation. Show off your testing skills, but please try to keep the kinds of tests you implement relevant to the assignment.

There is no time-limit on this work, however want to respect your time. These questions are deliberately open-ended, but try to see what you can do in 1-3 hours. Also, remember that since we will be reviewing your code, we don't have time to carfully review a very big submission.

Bonus questions

Bonus questions are optional. You will not be penalized if you do not attempt the bonus questions, however candidates for senior roles should have a go at them.

How we will assess your submission

We are just as interested in your process as your final product. We want to understand your workflow, and your testing strategy.

  • We will run your code. Please include all relevant documentation and scripts which will allow us to execute your project.

  • We will read your code in order to determine if your implementation matches the requirements given in the question.

  • We will look at your coding style, to determine if your style is clear and easy to read.

  • We will look at your tests, to determine how your testing strategy led your development.

  • We might ask you questions about your code in a code-review session. This could be in a subsequent stage of the interview process. A code review might also require you to make some changes your code.