Нашел тут на просторах сети список требований к соискателю работы, или иными словами, какими видят верстальщиков со стороны клиенты и работодатели, что например работодатели вкладывают в обязательные знания специалиста. Вот пост одной из компаний с их тестовым заданием:

Теория
На дворе 2012 год. У вас задание сверстать полный редизайн сайта.

  • Какой doctype выберете и почему?
  • Что такое progressive enhancement и graceful degradation? При чем здесь Modernizr?
  • Какие браузеры вы считаете нужным поддерживать сегодня?
  • Валидно, семантично или работоспособно? Что важнее?
  • Что такое типографика и зачем она нам сдалась?
  • Windows, Mac или Linux?
  • Rebel or Empire?

Практика

  • Сверстайте резиновый блок с круглыми уголками и с тенью при наведении, чтобы фон страницы можно было менять не трогая блок.
  • Возможно ли это сделать без картинок? А в IE7? А в Opera 9?
  • Со звёдочкой: сверстайте пост, оформленный пятью оттенками зелёного (заголовки, текст, фон, автор, дата, рамки — что угодно). Но сделайте это так, чтобы зелёный цвет задавался только в одном месте, и при изменении зелёного на синий в этом месте, все оттенки становились оттенками синего. Sass использовать можно. :) Кстати, шрифт заголовка поста должен быть нестандартным и работать в максимальном количестве браузеров. Никаких картинок, разумеется. Сможете ли вы к такому посту организовать нестандартную рамку с разными уголками, не меняя HTML страницы? В каких браузерах? А без JS?
  • Со звездищей: напишите чат. Да, вот так просто. Только чтобы он работал на WebSockets, когда они доступны, и откатывался до FlashSockets — когда нет. Никаких фреймов.
  • Напишите команду с использованием jQuery, которая заставит все ссылки, ведушие за пределы сайта, открываться в новой вкладке/окне. Перехода по ссылке при этом быть не должно. А после клика по такой ссылке чтобы рядом с ней появлялась галочка.
  • Организуйте выпадающее меню без использования JavaScript. Можно ли сделать, чтобы оно появлялось не сразу, а постепенно — через прозрачность, и если да, то где это может работать?
  • Создайте сайт из трёх страничек, переход между которыми не вызывает перезагрузку страницы. Данных должно передаваться как можно меньше. А URL при переходе — меняться, и при заходе на любой из них, пользователь должен попадать туда, куда намеревался.
  • Напишите простой сайт из двух страничек — на одной должен быть калькулятор, на другой — генератор случайных чисел. Единственное условие: он должен работать оффлайн (в Хроме) и запоминать последние результаты после закрытия браузера даже при выключенных куках (во всех топовых браузерах — но совместимость со старыми станет огромным плюсом).
  • Со звёздочкой: что такое ООП? Своими словами.
  • Со звёздочкой: выскажите своё мнение о перспективах Dart.
  • Со звездищей: расскажите о хотя бы трёх способах наследования JavaScript.

А так же соискатель должен знать:

  • Git. Или, хотя бы, SVN. И в целом, VCS. ;)
  • MVC и ООП. Или хоть что-то из двух.
  • RIA, Comet, Socket. А если Вы написали какое-нибудь RIA самостоятельно, то Вы уже почти приняты.
  • Веб-фреймворк. В частности, Ruby on Rails, Django, Symfony, Zend — представление о том, как они работают, даёт 100 очков.
  • JS-фреймворк. jQuery, Prototype или что-то подобное знать настоятельно рекомендуется. Кроме случая, когда Вы — Гуру низкоуровненого JS, и пишете код, совместимый со всеми браузерами, вплоть до Netscape Gold и IE4 включительно.
  • CSS-фреймворк. Blueprint или Compass станут отличными компаньонами для Вас на собеседовании.
  • HTML-шаблонизаторы. Haml, Slim, ERB (Erubis), Smarty, Jinja2, Jade, Moustache, Textile, Markdown… Да даже просто Wiki сослужит Вам хорошую службу.
  • CoffeeScript. Мы так любим кофе. Чего и вам желаем.
  • DSL для CSS. Sass, Scss, Less — будет прекрасно понимание механизмов работы mixin, CSS-переменных и прочих кавайных вещей.
  • JSON — нужно понимать его с полускобки. YAML тоже не будет лишним. XML подразумевается.
  • TCP/IP, DNS, HTTP (S), SSH… Нет, сисадмин нам не нужен. :) Но такие знания не будут лишними и для веб-технолога. Как минимум стоит понимать отличия URL от URI и иметь представление о REST.
  • DOM, XHTML, DHTML. Понимание этих понятий станет таким же существенным плюсом, как и способность назвать 10 отличий между Strict и Transitional будучи разбуженным посреди дня. Посреди 1 января.
  • SEO. Ваша великолепная вёрстка должна быть приятна не только людям и валидаторам, но и (а может, и в первую очередь) поисковикам.
  • Web 1.0/2.0 — знать и понимать, что это такое. Web 3.0 — знать и понимать, что никто не знает, что это такое. Semantic Web — знать и понимать, что это не Web 3.0, но тоже очень важно. А круче всего — иметь собственное мнение по всем этим вопросам.
  • БЭМ. Или что угодно подобное. Хоть какая-нибудь идеология. А в идеале — своя собственная, любимая, но при этом адекватная.
  • HTML5. Куда же без него? :) Без него теперь и в дворники не берут.

И самое главное. Никто у нас не знает всего этого одновременно, чего и от вас не требуем. :) Но хотя бы иметь представление, о чём идёт речь в каждом из пунктов очень стоит. Правда. Очень.

Присылайте свои мысли по поводу того, почему мы должны взять вас на работу.

Что скажете?

Категория: Мысли вслух | Теги:

Оставьте свой комментарий