Что должен знать битрикс-программист?

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Некоторое время назад мне довелось пройти больше десятка собеседований на позицию php-программиста (битрикс). К удивлению, требования в различных организациях отличаются совсем незначительно и есть возможность сформировать некий единый список необходимых знаний для успешного трудоустройства. Так что же должен уметь битрикс-программист с точки зрения работодателя?

Лирическое отступление

В моей выборке организаций была всего лишь одна веб-студия. Вполне возможно, что это как-то повлияло на темы общения с техническими специалистами, т.к. специфика производства «сайтов на поток» отличается от поддержки\доработки фиксированного пула проектов. С другой стороны, технологии используются одни и те же, и большой разницы быть не должно.

Вообще, спрос на битрикс-программистов сейчас необычайно велик. Потратив 2-3 месяца на изучение особенностей системы, можно расчитывать на предложение от какой-нибудь крупной веб-студии с интересными проектами. Есть и негативный момент — в битриксе нет ООП, практики применения паттернов проектирования, современных подходов к программированию (есть шанс что в новом ядре все это будет). В 99% проектов нет необходимости писать SQL-запросы, т.е. научиться в процессе работы практически невозможно.

Общие вопросы

Практически везде спрашивают про опыт работы с высоконагруженными проектами. Если были, то какая на них посещаемость и что делалось для обеспечения безотказного функционирования.

Встречались стандартные вопросы типа «Чем InnoDB отличается от MyISAM» или «Чем PHP4 отличается от PHP5», и даже холиварный «Чем интерфейс отличается от абстрактного класса в PHP». На эти вопросы нужно знать ответы.

Крайне необходимо уметь рассказать про отличия между различными типами join’ов. Чаще всего просят написать какой-нибудь не слишком сложный запрос (иногда вместе со структурой таблиц) с использованием JOIN и HAVING.

Почему-то считается, что программист должен уметь верстать. Поэтому будьте готовы к вопросам про селекторы и тэги, html5 и css3. Вообще, html5 и css3 — это тренды в веб-строительстве, почти все хотят чтобы программист в них разбирался, забывая про такую профессию как верстальщик. На мой взгляд, в веб-студиях это осознают лучше.

Нативный javascript требуется не везде, достаточно хорошо ориентироваться в jquery.

Могут попросить реализовать какой-нибудь известный алгоритм — факториал через рекурсию или сортировку массива.

Регулярные выражения для простейших случаев тоже знать полезно.

Битрикс Управление Сайтом (БУС)

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

Инфоблоки. Чем отличаются обычные от 2.0 на уровне хранения в базе данных и на уровне доступа через API. Знать примеры выборок через GetList. Было задание написать sql-запрос, выбирающий данные из инфоблоков разного типа.

Кэширование — авто, управляемое, php, html, их отличия и условия применимости. По-хорошему не стоит считать себя битрикс-программистом без уверенного знания ответов на этот и предыдущий вопросы.

Встроенные средства диагностики и умение находить узкие места в коде, тяжелые запросы, тормозящие страницы и т.д.

Рассказать, что не нравится в битриксе и какие компоненты\модули являются обузой для системы в целом.

Хорошо если есть портфолио. Часто нужно рассказать про самый интересный проект, в котором довелось участововать. Какие нестандартные решения были использованы.

Корпоративный портал

Очень и очень перспективное направление. Знающих людей мало и они в цене. Можно смело позиционировать себя как «специалиста по внедрению корпоративных порталов». Вопреки мнению менеджмента битрикса о том, что все необходимое есть в коробке — это не так. Организации хотят интеграции со своими crm и erp системами в различных вариациях. Опыт работы с SOAP в корппортале — половина трудоустройства:) Другое дело, что кастомизировать портал очень неприятно и горы «костылей» не избежать. В общем, удовольствие для избранных.

Забавно, но 90% компаний первоочередной задачей ставят «разобраться с тормозами». Так что навык администрирования серверов будет большим плюсом.

Примерно такой список навыков требуют крупные компании при рассмотрении кандидатов. Естественно, в каждом конкретном случае есть что-то отличное, но в общем случае знать вышеприведенное очень желательно.

Интересные статьи

Интересные статьи

Целью данного проекта было: Изучение протокола DHCP при работе в сети IPv4 Изучение Python (немножко более чем с нуля ;) ) замена серверу DB2DHCP (мой форк), оригинал здесь, который со...
Компания Klipsch, основанная в 1946 году Полом Клипшем, — всемирно известный производитель акустических систем. Аппаратура этого бренда нашла применение как в крупных кинозалах, так и домашних ки...
Клетки выращенной железы Первая в мире бионическая поджелудочная железа с кровеносными сосудами была напечатана польскими учёными из Foundation for Research and Science Development, уникал...
Сегодня будет маленький этюд просто понять, интересно ли вам такое. В общем, есть такой дядька Алексей Савватеев, который читает потрясающий курс по теории игр. Он же написал книгу «Математика дл...
Статистика для сайта-СМИ – это её хлеб. Рекламодатель, на деньги которого живёт и развивается проект, хочет знать – сколько же человек увидели его рекламу.