This exercise has been designed to be completed in 4-8 hours. The goal of this exercise is to write a client library in Go to access our fake account API service.
- Client library should be written in Go
- Document your technical decisions
- Implement the
Create
,Fetch
,List
andDelete
operations on theaccounts
resource. Note that filtering of the List operation is not required, but you should support paging - Focus on writing full-stack tests that cover the full range of expected and unexpected use-cases
- Tests can be written in Go idiomatic style or in BDD style. Form3 engineers tend to favour BDD. Make sure tests are easy to read
- If you encounter any problems running the fake accountapi we would encourage you to do some debugging first, before reaching out for help
- Add your solution to the provided docker-compose file
- We should be able to run
docker-compose up
and see your tests run against the provided account API service
- Use a code generator to write the client library (like Swagger)
- Implement an authentication scheme
- Create a private GitHub repository, copy the
docker-compose
from this repository - Invite @form3tech-interviewer-1 and @form3tech-interviewer-2 to your private repo
- Let us know you've completed the exercise using the link provided at the bottom of the email from our recruitment team
- Usernames of the developers reviewing your code will then be provided for you to grant them access to your private repository
- Put your name in the README