|
|
Skill |
▢ |
▢ |
Uses latest versions of React and React Native when possible |
▢ |
▢ |
Uses higher-order components to reduce code duplication |
▢ |
▢ |
Shares code between iOS/Android components when possible |
▢ |
▢ |
Uses Redux to manage application state |
▢ |
▢ |
Uses CodePush to roll out app updates without App Store review |
▢ |
▢ |
Uses Crashlytics for error notification |
▢ |
▢ |
Uses Fabric and Fastlane to automate beta builds and App Store submissions |
▢ |
▢ |
Specifies dependencies strictly in package.json to avoid unintended upgrades |
▢ |
▢ |
Uses Jest to test services and components |
▢ |
▢ |
Separates logic from component state using services |
▢ |
▢ |
Presents loading state and errors to user |
▢ |
▢ |
Handles promise rejections appropriately (not `console.log`) |
▢ |
▢ |
Styles components effectively using Flexbox |
▢ |
▢ |
Uses animations where appropriate to improve user experience |
▢ |
▢ |
Sends a semantic version number alongside all API requests |