Some of the take home projects that are part of the Atila interview process.
You can also read the prerequisites and tutorials document to help you get familiar with Atila's tech stack and projects.
To see an open-source example of the Atila backend and frontend see:
- Atila Backend: atila-api-demo
- Atila Frontend: client-web-app
Create a Flask server that given a search query, returns the scholarships in /data
that matches that search term.
Note: In your actual code you should use the data in data/scholarships.json
Suppose I have the following scholarships in my database:
[
{
"name": "Scholarship 1",
"description": "Scholarship 1",
"eligible_schools": ["Western University", "University of Waterloo"],
"eligible_programs": ["Software Engineering"]
},
{
"name": "Scholarship 2",
"description": "Scholarship for engineering students",
"eligible_schools": [],
"eligible_programs": []
},
{
"name": "Scholarship for University of British Columbia",
"description": "Scholarship for BC students",
"eligible_schools": [],
"eligible_programs": []
}
]
- If I visit the following url:
http://localhost:8000/scholarships/?q=engineering
- The API should return all the scholarships that contain the string "engineering" in any of the scholarship's fields.
- So in this example, the API will return the following response:
{
"query": "engineering",
"results": [
{
"name": "Scholarship 1",
"description": "Scholarship 1",
"eligible_schools": ["Western University", "University of Waterloo"],
"eligible_programs": ["Software Engineering"]
},
{
"name": "Scholarship 2",
"description": "Scholarship for engineering students",
"eligible_schools": [],
"eligible_programs": []
}]
}
- Create a python Django project that uses the Django Rest Framework and has an API with the following two endpoints:
api/scholarships
which returns a list of scholarshipsapi/search/<search_term>
which returns a subset of scholarships matching the search term- Your application should have a
Scholarship
model
Your task is to design a simple web app that does the following:
- Display a list of scholarships found in
data/scholarships.json
. The list view should show: name, deadline, amount, image, description - If the user enters a search term, a subset of scholarships matching the search term is displayed
- If the user clicks on a scholarship, they are taken to the scholarship detail page where they can see: name, deadline, amount, image, description, specific_questions, eligible_schools, eligible_programs, city, province, country. See the Atila Science and Engineering STEM scholarship as an example.
Note: For the searching feature, you can do this completely in the frontend. You can make any assumptions you want about how the searching logic and implementation should work.
Here's a mockup of what you will be building:
- Pick any Atila Direct Application Scholarship.
- Create an Intagram carousel design to advertise the scholarship using Figma.
- For example, See: SkateBoards For Hope Design
- Hint: You can use Storyset or any other tools you want. You can also use the Storyset Figma Plugin
- Pick any Atila Direct Application Scholarship.
- Make a real Twitter account and Instagram account dedicated to promoting the scholarship.
- Add a realistic photo, bio, links, follow relevant accounts etc
- Make a twitter thread (example 1, example 2) and Instagram Carousel (example 1, example 2) promoting the scholarship.
- Find 3 TikTok accounts that Atila could potentially partner with and explain why you chose them
- Write a short writeup explaining how you created the account, what marketing strategies you used (captions, picture choice, Call to Actions etc.) and In your Google doc include links to the social media accounts, the social media posts and screenshots of your post and the 3 TikTok accounts and why you chose them
- Send the Atila marketing team a link to the Google doc
- For software tasks, send your interviewer a link to your Github repo
- If applicable, make sure you include a README.md explaining how to run your code and add any necessary comments and documentation which would make it easier to understand your code and commits)
- For design tasks, send your interviewer a link to your design in Figma
- For all tasks, record a Loom video showing what you built and explaining your code
- The video doesn't have to be anything too elaborate and long, it should be about 30-60 seconds long
- Some things you can talk about: showing the full product flow, an interesting technical problem you faced in your code and how you solved it, ideas for how you could improve what you built