Hiring Pair Programming Excercise
Welcome to this pair programming excercies for Axiomatic AI!
This repository is a very minimal application that we have put together to test new candidates. The repository resembles how our codebase is structured but in a very much "cut down" fashion. As you will see, the application takes pieces from "clean architecture" standards and slims it down. It is by no means perfect (and neither is our real code) - if you see areas to improve, please mention them in the interview!
During the pair programming excercise, you will be given some features, and be expected to implement them e2e. We are there to guide and help you! - answering any questions you may need, or even helping with syntax.
Please make sure to follow the Dev Setup section before the day of the interview so that we can help within any problems you may have.
Application Description
This is a simple application for a "fair housing market". The mission is to make the housing market fairer for the individual by allowing them to list and compare housing with various AI tools.
Currently, users can only post houses, indicate if they are the owner, and view all houses listed in the platform.
Stack
For simplification purposes, this is only a backend application built using FastAPI.
Dev Setup
Requirements
- Docker and docker compose
- Python
Installation
make venv && make install && make install-dev
Serve the app
make start
Go to http://localhost:8080/docs to see the Swagger UI
Database notes
There is a postgres database that powers the application. For simplicity, it is cleaned and re-seeded when you run make start. This means you do not have think about DB migrations. You can run make clean-db if you need to clean it manually.
VSCode Setup
If you open the project directly within vscode, the debugger has been setup for you.
If you search for "@recommended" in the extension marketplace, you will see all recommended extensions.