As an engineer on the core team, and also serving time on two feature teams (Messaging and Community), I gained experience in various fields of Mobile Engineering.
Performance optimizations: Improving app startup time and enhancing the performance of screens and components by leveraging memoization and other techniques.
Bug fixing: Unresolved bugs from feature teams were escalated to the core team, requiring me to often dig into library and native code to identify and fix the issues.
App security: Drawing on my previous job experience, I improved the app’s security, implementing techniques such as code obfuscation and safer handling of credentials.
Monorepo setup: Using NX, I set up a monorepo to improve codebase sharability and maintainability, which also led to significant reductions in build times, saving up to 330 hours monthly.
Design system: I built a design system for feature teams, ensuring that the API and component documentation were clear to enhance the user experience for the teams.
Messaging integration: I worked with GetStream to add messaging functionality to the app.
Testing: Applying a shift-left mindset, developers were responsible for writing E2E tests for their flows. We also maintained 100% test coverage for our codebase.