Welcome to the Microsoft House in Milan!
This is your central guide to what we're building, how the day will go, and what each challenge is about.
๐ Time | ๐๏ธ Activity |
---|---|
9:00 โ 9:20 AM | ๐ Welcome and overview of the day's schedule ๐ Description of the challenge ๐ Explanation of rules and guidelines ๐ก Tips and tricks |
9:20 โ 12:00 PM | ๐ง Hackathon Morning Session |
12:00 โ 1:00 PM | ๐ Lunch Break (Feltrinelli) |
1:00 โ 3:15 PM | ๐ป Hackathon Afternoon Session |
3:15 โ 4:00 PM | ๐ฃ๏ธ Team Presentations |
4:00 โ 4:30 PM | ๐ Announcement of Winners |
4:30 โ 5:00 PM | ๐ Closing Remarks |
The hackathon consists of multiple progressive challenges.
Tackle as many as you can โ the more you build, the better your final solution!
Be sure to check the tech_requirements folder to see if you are ready to start the challenge!
- Download CSV file inside the data folder, with usersโ data and transactions.
- Analyze data and draw an E-R Diagram.
- Create database and tables from the E-R Diagram using GitHub Copilot and populate it with CSV data.
- Develop a back-end API layer exposing CRUD (Create, Retrieve, Update, Delete) service to interact with the database previously created.
- Choose a single user on your DB.
- Build a web application (e.g., React, Angular, etc.) that shows the transactions table of that user.
- Implement the capability to add, update, or delete transactions.
- Ensure the app follows responsive design principles.
- Create a new โDashboardโ page in the web application.
- Display charts (e.g., pie chart by category, bar chart for monthly expenses).
- Include a filter to modify the analysis period (default: last 12 months, but allow date range adjustments).
- Analyze all usersโ data to identify profiles by similarities (city, region, age, job, gender...).
- Calculate and compare average expenses per category for these profiles.
- Create โpersonasโ for cost optimization suggestions based on similar users.
- Add an โAdvanced Analyticsโ page showing comparisons between your expenses and similar users' averages.
- Create a unit test suite to validate the implementation.
- Create a simple login page where users can authenticate and view or update their own transactions.
The Microsoft team is here to support you!
If you're stuck or have questions, just raise your hand and someone will assist you.
Happy hacking! ๐