Welcome to the Modulr coding exercise!
We have created an exercise designed to let you show off your skill and creativity when it comes to API design and implementation.
Consider an email client like Gmail or Outlook and imagine you are writing a backend service to handle the requests coming from the UI.
To keep things high level you are only required to implement the controller methods. You can assume that there is an EmailService
that can handle any complicated logic.
We have also included a sample project using Spring
and Java 11
with a controller available in EmailController
. It is not strictly required that you use Spring
and are welcome to use whatever REST
implementation you choose.
Expand on the EmailController
to include endpoints that provide the following functionality:
- Read a single email
- Read multiple emails
- Send an email
- Delete an email
You are in complete control of how those endpoints are structured however you should consider things such as
- API design - appropriate HTTP methods, path, request and response
- Testing
- Error handling
- Best practice spring usage
- Clean architecture
Your submission will be used in the next part of the interview process to discuss your approach and implementation.
Please take sensible steps to avoid other candidates being able to view your submission.