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.
KEY PERFORMANCE AREAS AND KEY PERFORMANCE INDICATORS
- Delivering a complete front end application
- Ensuring high performance on mobile and desktop
- 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
Required (not negotiable):
- Grade 12 Senior Certificate (Matric)
Advantageous (nice to have):
- A relevant university computer science degree or equivalent.
- Desired Skills: MongoDB, Node.js, AngularJS, Express Js, mean.io
- 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 multi-threading, 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 configuration, build, and test scripts for Continuous Integration environments
ATTRIBUTES AND COMPETENCIES
- Planning and organising
- Knowledge Specialisation
- Must be individually driven and motivated
- Must be reliable and responsible
- Must be enthusiastic and very willing to learn
- Must be willing to work overtime when required.
- Must be willing to do business travel to customer sites as and when required.