Position: Middle/Senior React Native Developer
Company: ABNK Premium Systems
Experience required: 2y
Category: JavaScript
English level: intermediate
Published: 2021-04-01T00:00:00+03:00

**General requirements:**
• 2+ years of experience and a firm grasp of the JavaScript language and its nuances, including ES6/ES7 (ECMAScript);
• 2+ years of experience with React.js;
• 1+ years of experience with React Native, it’s commonly used libraries along with relevant state management techniques: Redux, redux-thunk, redux-saga (preferred), Context API, hooks;
• Strong understanding & usage of SOLID principles and software design patterns
• Knowledge of Android and iOS UI design principles;
• Understanding of CI/CD (principles, instruments);
• Understanding and experience with REST, SOA concepts;
• Ability to analyze, profile and eliminate performance bottlenecks in web and mobile applications;
• Knowledge of Typescript;
• Solid understanding of the full mobile development life cycle;
• Level of English - Intermediate or higher.

**Would be a plus:**
• Experience writing unit tests using Jest, Enzyme, and React testing library;
• TDD experience with Jasmine;
• WebSockets, real-time apps;
• Experience developing with Node.js;
• Basic knowledge of web apps security (OWASP TOP10);
• Practice in debugging Android and iOS applications in emulators and real devices;
• Experience in collecting crash statistics and eliminating crash causes (e.g. Sentry, Crashlytics);
• Ability to set up the required development environment;
• Experience with Linux-based OS, Bash.

**Responsibilities:**
• Assess tasks and provide reliable time estimates;
• Design and build applications of medium and advanced complexity for the Android and iOS platforms and deploy them to Google Play Market and App Store;
• Leverage native APIs for deep integrations with both platforms;
• Implement clean, modern, smooth animations and transitions that provide an excellent user experience;
• Optimize application regarding project requirements;
• Collaborate with the backend team and use external data sources and APIs;
• Cover one’s own code with unit tests and run them to ensure security, usability, and general reliability;
• Work on integrating available open-source third-party plugins, components and libraries;
• Work on integrating the provided visual design, including animations and UI effects, into applications;
• Continuously discover, evaluate, and implement new technologies to maximize development efficiency;
• Communicate with clients, answer questions, explain decisions and understand inbound feedback and requests.

**What we offer:**
• Competitive salary according to your qualification and skills;
• Flexible working hours aligned with your schedule;
• Paid vacations and sick leaves;
• English courses;
• Sports training compensations.

**Why choose us:**
• You will be working peacefully with a group of kind and professional people, no office drama, zero tolerance for bureaucracy;
• We maintain a balance between responsible work and a kind atmosphere in the office;
• Our company will make a lot of effort to support your professional growth.

**About the project:**
Developing a mobile application targeted at users interested in sports betting. The client is from the USA. It supports a vast variety of sports, from American football to golf and racing. Here’s a list of sports leagues: NFL (American football), NBA (basketball), MLB (baseball), NHL (ice hockey), NCAAF (college football), NCAAB (college basketball), MMA (mixed martial arts), PGA (golf), NASCAR (stock car racing league). Users will be able, as in most standard applications, to register (create their unique profile), and track real-time stats on games, namely, various betting odds for a wide variety of sportsbooks. At the same time, a user can make their own virtual bets on specific games within the application, see the result of their bets at the end of the game, keep statistics, and monitor the bets of other users (follow them). In addition, there will be a section with articles where users will be able to read sports news and add them to their bookmarks. There’s a social component that is planned but yet not fully developed. The client has something like a social network in mind.