first internship, first real codebase. learn fast, ship features, and not break a flutter app already serving hundreds of thousands of users.
- flutter intern
- oct 2021 to jan 2022
- flutter · firebase
showing up barely knowing github
this was my first internship. i had written flutter on my own, but i hadn't worked inside a real team or a real codebase. day one meant figuring out branches, prs, and code review, the practical side of shipping with other people.
the bar was higher than my college side projects. the app was already live and being used.
onboarding and dashboard at scale
i built parts of the onboarding and dashboard screens in flutter. tiny surfaces but every new user hit them. that meant honoring loading, empty, and error, not only the sunny path.
the app needed to handle 500k+ users across patchy networks, so i used riverpod for state and dio with retries and timeouts for the api layer.
the happy path is easy. the loading, empty, and error states are the product.
dark mode and the small stuff
i added dark mode across the screens i owned and nudged general ui polish along the way (spacing, type scale, hit targets). boring on paper but it keeps the product from feeling janky.
this was where i first learned that detail work compounds. shipping a ticket isn't always the same thing as finishing it.
- 500k+ users
- first prod ship
- flutter · firebase