This project is part of the Squiz product engineering interview process. The codebase has been written to contain multiple issues that could be identified and fixed by an engineer.
Pretend you have just inherited this codebase from the business.
The project is a simple microservice that enables people to make a list of tasks to do. The company recently introduced TypeScript to its development team and has undergone a transformation project to add type safety to this application. There has also been an increased focus on Quality Assurance, both on a code level and UX level. It's been decided that you are the new owner of the project. Your job is to review the codebase and ensure that it meets these new standards.
To get the app to run, please ensure you have node 16
and npm 7
installed. From there:
npm install
npm run serve
- Get the project running, inspect the codebase, and note down any issues you see.
- Determine the 5 most critical parts of the project that need changing based on your experience. For each one, consider the changes that you would make to improve the codebase.
Note: We will be discussing the issues you have found during the interview, so please make sure you note them down and that you are familiar with the codebase. You don't need to actually write code as part of this process, but you can absolutely do so if that makes things easier or if you prefer to show your own code during the technical review.
- Your ability to read and understand an unfamiliar codebase
- Your ability to identify issues with an unfamiliar codebase
- Your ability to communicate those issues, why they're an issue, and what work needs to be done to resolve the issue