Job Description
We are looking for a Front End Engineer responsible for the client side of our service. Your primary focus will be to implement a complete user interface in the form of a desktop web app, with a focus on performance. Your main duties will include creating modules and components and coupling them together into a functional app. The artistic design will be delivered to you, together with a few HTML templates, but we will ask for your help regarding animations, CSS, and final HTML output. You will work closely with the back-end team to decide REST contracts; hence a thorough understanding of all of the components of our platform and infrastructure is required.
Responsibilities
Delivering web front-end applications from scratchEnsuring high performance on desktopWriting tested, idiomatic, and documented JavaScript, HTML and CSSCoordinating the workflow between the graphic designer, the HTML coder, and yourselfCooperating with the back-end developers in the process of building the RESTful APICommunicating with external web servicesSkills and Qualifications
- Must have 3-5 years of experience in JavaScript. Must be a Professional, with excellent communication skills.
- Expert in React Redux, Redux Saga, ES6 and Object Oriented Javascript. React native would be a plus. Working knowledge of HTML5 and CSS3.
- Creating self-contained, reusable, and testable modules and components
- Ensuring a clear dependency chain, regarding the app logic as well as the file system
- Ability to provide SEO solutions for single page apps
- Extensive knowledge of CSS and JS methods for providing performant visual effects and keeping the framerate above 30fps always
- Thorough understanding of the responsibilities of the platform, database, API, caching layer, proxies, and other web services used in the system
- Validating user actions on the client side and providing responsive feedback
- Experience with all levels of operation available to the front-end, such as from creating XHRs in vanilla JS to using a custom wrapper around $resource
- Experience with building the infrastructure for serving the front-end app and assets
- Architecting and automating the build process for production, using task runners or scripts
- Documenting the code inline using JSDoc or other conventions
- Writing extensive unit tests using automated TDD tasks
- Creating e2e test suites for all components, and running them with Protractor (or a well-reasoned alternative)
- Creating configuration, build, and test scripts for Continuous Integration environments
- Ability to communicate complex technical concepts to both technical and non-technical audiences.
- We expect an entrepreneurial mind-set, someone who is not afraid to take on new challenges every day and who considers the product as his own by taking complete ownership of it