По договоренности
1) Знание основных понятий программирования: условный оператор (if-then-else), циклы (for, while, foreach), функции, анонимные функции, массивы, классы.
2) Javascript. Ajax, JQuery, JSON, знание, что такое DOM и DHTML, XML
3) Знание протокола http. POST и GET запросы, коды ответов сервера. Асинхронные запросы.
4) Наличие skype. Умение работать удаленно. Умение ставить задачу самому себе, исходя из требований. Умение рассчитывать сроки работы.
5) Опыт работы. Дать ссылки на свои работы.
Желательно, но не обязательно:
1) JSP-верстка
2) Знание, что такое Spring MVC
3) Опыт работы с длинными http соединениями и опыт написания COMET web-приложений. Если человек это умеет, то он на вес золота.
4) Знание Javascript-библиотеки Ext
Описание обязанностей:
На входе:
голый html+css страниц сценария, на каждой странице данные для работы сценария с сервера в виде набора javascript переменных в тэге <script> в голом html, словесное описание сценария работы (может, еще диаграмма или блоксхема), описание всех необходимых для работы сценария URL, то есть протокол взаимодействия с сервером: с каких URL данные приходят, на какие URL данные надо отправлять, форматы приема и передачи данных (html, xml, json).
В процессе:
Сценарий и протокол взаимодействия с сервером обсуждаются, корректируются и утверждаются. Javascript-Программист реализует сценарий. Проводится тестирование и отладка под разными браузерами. Все баги правятся.
На выходе:
работающий во всех распространенных браузерах (IE, Firefox, Chrome, Safary, Opera) сценарий. Или описание ограничений для работы сценария для некоторых браузеров. Пути обхода ограничений. Javascript-код должен быть хорошо структурирован и читаем другим программистом, приветствуются комментарии и документация по написанному коду.