Job Description:
We are looking for an AngularJS Developer responsible for the client side of our service. Your primary focus will be to implement a complete user interface in the form of a mobile and 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 in regard to animations, CSS, and final HTML output. You will work in a team with the back-end developer, and communicate with the API using standard methods. A thorough understanding of all of the components of our platform and infrastructure is required.
Responsibilities:
• Delivering a complete front-end application • Ensuring high performance on mobile and desktop • Writing tested, idiomatic, and documented JavaScript, HTML and CSS • Coordinating the workflow between the graphic designer, the HTML coder, and yourself • Cooperating with the back-end developer in the process of building the RESTful API • Communicating with external web services.
Skills and Qualifications:
• Proficiency with JavaScript and HTML5
• Professional, precise communication skills
• Deep knowledge of AngularJS practices and commonly used modules based on
extensive work experience
• Creating self-contained, reusable, and testable modules and components
• Ensuring a clear dependency chain, in regard to 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 at all times
• 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
• Writing non-blocking code, and resorting to advanced techniques such as multithreading, when needed
• Creating custom, general use modules and components which extend the
elements and modules of core AngularJS
• 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.
Minimum of 1 - 3 Year(s) Of Experience