Overview

Responsibilities:

  • Meet with the development team to discuss user interface ideas and applications
  • Review application requirements and interface designs
  • Identify web-based user interactions
  • Write high quality, readable, maintainable code (including unit tests)
  • Design and develop reusable front-end components, modules, and tools;
  • Develop and implement highly-responsive user interface components using React concepts
  • Write application interface codes using JavaScript following React.js workflows
  • Troubleshoot interface software and debug application codes
  • Develop and implement front-end architecture to support user interface concepts
  • Monitor and improve front-end performance
  • Change and develop document application 
  • Work with the team to propose optimal technical solutions to the proposed requirements and designs

Required Qualifications:

Education and Requirements

  • Bachelor’s degree in Computer Science, Information Technology, or a similar field
  • At least 3 years of professional programming experience working as a React.js Engineer
  • 4+ years of JavaScript experience
  • Knowledge in  Node.JS

Technical Qualifications

  • In-depth knowledge of JavaScript, CSS, HTML and front-end languages
  • Hands-on experience in React.JS (  functional components and class components ) 
  • Knowledge of REACT tools including React.js, Webpack, Enzyme, Redux (React Redux)
  • Knowledge in React Context 
  • Experience in JavaScript and supporting technologies such as TypeScript and npm
  • Experience in building solutions on top of AWS such as Lambda, API Gateway, Dynamo and others
  • Knowledge of Node.js concepts (Such as event loop, cluster, memory management)
  • Experience with user interface design
  • Knowledge of performance testing frameworks including Mocha and Jest
  • Experience with browser-based debugging and performance testing software
  • General understanding of UI/UX processes 
  • Excellent troubleshooting skills

Non-Technical Qualifications

  • Excellent communications skills, both verbal and written, complemented by an ability to collaborate with the development team
  • Fluency in English. Ability to participate in technical discussions and participate in reading/writing technical annotations
  • Must feel comfortable working in a fast-paced, dynamic, and flexible environment
  • Creative problem-solving, proficient debugging and profiling
  • Good time-management and project management skills
  • Flexibility and ability to learn new technologies
  • Ability to work with and coordinate with other developers