Case study Mobile
Bullseye
Educational coaching & classroom observation
Overview
Bullseye is a Flutter mobile app from Liberate Labs that coaches and school leaders use to run classroom observation sessions, set and track goals with educators, manage next steps and share learning resources. It is built for school districts, with sign-in through Google and NYC Schools single sign-on.
As a Software Engineer II on the mobile team, I build features end-to-end across the app’s Clean Architecture layers and ship through PR-based reviews — 180+ builds to date.
What I did
- Built the session launch flow — starting observation sessions from templates and selecting classrooms and learners.
- Delivered the resource library: rich-text editing, media uploads and native gallery pickers on iOS and Android.
- Work across sign-in with email, Google OAuth and NYC Schools SSO, with JWT refresh and school-scoped API requests.
- Own features end-to-end with BLoC, GetIt, Dio and Either-based error handling.
Engineering highlights
- Clean Architecture: data → domain → presentation, with use cases returning Either<Failure, T>.
- BLoC state management with GetIt dependency injection.
- Dio HTTP client with JWT auto-refresh and school-scoped requests.
- Native gallery pickers on iOS and Android that keep original file names.