Develops expertise in native mobile platform engineering, such as iOS or Android
Works effectively within established iOS or Android architectures, following current best practices
Delivers features requiring simple local modifications
Adds simple actions that call server endpoints
Reuses existing components appropriately
E.g. Added existing button to a different iOS surface
E.g. Add follow button for publications on Android
E.g. Fetched and displayed a new stream, using existing stream item styles
Develops new instances of existing architecture, or minor improvements to existing architecture
Defines new useful and appropriate proto-generated objects
Creates simple new activities on Android
Migrates code from old patterns to new patterns
E.g. Upgraded SDWebImage to a new major version
E.g. Added support for rendering a new type of stream item
E.g. Prototyped a simple new feature quickly
Designs major new features and demonstrates a nuanced understanding of mobile platform constraints
Implements complex features with a large product surface area
Works effectively with Android reactive programming framework
Adds support for new iOS features after a major iOS version upgrade
E.g. Designed iOS caching strategy for offline reading
E.g. Built series reader on Android
E.g. Informed the team about recent best practice changes and deprecations
Builds complex, reusable architectures that pioneer best practices and enable engineers to work more effectively
Pioneers architecture migration strategies that reduce programmer burden
Fixes subtle memory management issues
Implements interactive dismissals that bring delight
E.g. Upgraded CocoaPods to a new major version
E.g. Designed architecture for fetching and rendering stream items
E.g. Migrated Android persistance layer to reactive programming
Is an industry-leading expert in mobile engineering or sets strategic mobile direction for an eng team
Defines long-term goals and ensures active projects are in service of them
Designs and builds innovative, industry-leading UI interactions
Invents new techniques to responsibly stretch limits of the Android platform
E.g. Defined and drove complete migration plan to Swift or Kotlin
E.g. Implemented Android recycler views before platform support existed
E.g. Pioneered application-level abstractions for multi-app environment