Front-end web developer

Front-end web developer


Job Description

We are looking for an experienced web developer to create and support several web sites (desktop and mobile) collecting loan application data.

You should be able to design clean and intuitive user interfaces with robust error handling. Artistic skills are not necessary, we have a designer who will provide templates and all graphical work.

Prefer near US work hours, but we can be flexible with time of day with the right person.

As a part of the application process we will offer you a test task which will allow us to evaluate your skills and code quality. It likely won't take more than an hour of your time. This is intended to help you demonstrate your skills and us to evaluate your skills. We also hope you find it more enjoyable than a standard question and answer interview, and it provides us with much better information to identify the best candidates.

Test task will be paid as 1 hour if you will be hired and will be neither paid nor used in any way if you will not be hired.

Start this job application with specific confirmation that you have read our test concept and any questions you have about it. Indicate when you would be prepared to start and complete this test.

Web site collecting applicants' data has two pages (no bells and whistles, very simple layout is ok).
On first page a user enters his/her address:
- ZIP Code;
- State - dropdown, 2-3 items are enough;
- City - dropdown populated with AJAX query based on chosen State (code demonstrating ability to populate city list using ajax call based on state selection... Selection Field 1 causing population of Select 2 with ajax.

On second page applicant enters a phone number, sets checkbox that he/she agree with terms of use, and submits the application. No need to store submitted application.

Applicant should be able to go back and forth between steps without losing already entered data.

When submitting each step, data should be validated with HTTP POST to external (back-end) URL (described below) that returns JSON-encoded error messages if any. Error messages should be displayed cleanly and intuitively near the problem form fields.

Back-end validation
URL that will provide basic validation of following fields and return in JSON format. Field validation for:
- ZIP Code (3-5 sample codes are valid, others reported invalid);
- State - must reject values not matching ZIP Code;
- Phone Number. (US format)

Keywords: DRY, MVC.