beta!
Do you want to start a new project with AngularJS? Are you sure that developers are able to join the project?
Be naughty and put them to the test!
This repository host a static Web application based on AngularJS, Jade and Bootstrap that can be used as seed project to provide a ready-to-use pre-configured development environment
It also provides a simple back-end WebService powered by Node.js and Express that should be consumed by the front-end application
- Front End Developer
- Full Stack Web Developer
- JavaScript Developer
- Ambitious Developer
Ideally you should be familiar:
- Node.js
- Jade
- MVVM frameworks
Is required you have previously installed the following tools:
- Node.js
- Grunt (
npm install -g grunt-cli
) - Bower (
npm install -g bower
)
Clone/fork this repository (or just download the archive)
$ git clone https://github.com/h2non/ng-exam.git && cd ng-exam
Install node.js dependencies
$ npm install
Install bower dependencies
$ bower install
This exam aims to evaluate a general technical skillsets applied to a Web development based on Angular taken from a well undestanding of the JavaScript language and the event-driven programming to a well the proper implementation and framework features usage
- You can create your own folder structure and sources files as you need
- You cannot use any JavaScript library that is not already provided
- As a great developer, you should test your code (however is not required a full test coverage, just focus on the most critical code)
- The Web is your friend, you can read documentation and search help
- You cannot mofidy the provided JSHint validation directives
As recommendation, dependening of your desired developers filter level skillset, the exam could be done from 2 hours for experienced developers until to 24 hours (that mean discarding the time taken installing and setting up the environment)
To do!
You have a seed Web application with an initial structure
To do!
Given the existent login page...
All the back-end communication must be performed in JSON format
- Focus on the requirements to satisfy
- Use the features that the framework offers you
- Remember YAGNI, KISS and DRY principles when you are coding
If it's possible, the implementation should be evaluated performing a code peer review by the both parts, giving the possibility to the candidate to explain his implementation desicisions
The order is not relevant
- Requirements satisfied
- Design patterns and separation of concerns
- Code structuration and modularity
- Impletementation complexibility
- Proper use of the framework features and components
- Proper JavaScript implementation
- Coding style and conventions
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE