As a part of the bootcamp program, I had the chance to work closely with the developer mentors at CloudMile for a project called Feedback Loop. It is a event feedback management tool that helps organizers keep track of participants’ feedback via form submissions. I collaborated with another classmate on this 2-week project and received guidance from our 5 mentors (Juri, Liang, Shan, Welly, Jack), which was super cool! The mentors took turns in reviewing our pull requests, gave recommendations for code quality/best practices, and encouraged me a lot throughout the collaboration!
Learnings
Here are some of the things I learned.
Database Schema
I got more familiar with working with Firebase Firestore to come up with a database schema through this first phase of the process. Through some back-and-forth discussions with our teacher and mentors, we finally got a structure down that we could work off of.
Git Flow
We used a simplified approach to git flow. The steps were as followed:
- Make a develop branch from main
- Pull remote develop to local develop, then make a feature branch from develop
- When done, push local feature branch to remote feature branch
- From remote feature branch, open a pull request to develop
- PR review time!
Best Practices
Also, we got some advice on best practices for developing collaboratively.
- 300-500 lines for a PR
- 1 branch: 1 PR, 1 branch: 1 feature
- Pull develop every day
I think the ratio 1: 1 makes a lot of sense. It’s focused, modular, and more maintainable. Similar to how a food stall should only sell one thing if they want to be specialized in a dish.
Reflection
Due to the time crunch (2 weeks was a little tight for this), I relied on AI a lot to debug and break down manageable tasks for me, which resulted me in having less control in the code I was writing. If I had more time on this project, I would spend more time on refactoring so then other features could be built on top of our work in the future.
Top comments (0)