Фронтендер- это разработчик, который решает задачи пользовательского взаимодействия. Короче говоря, его задача сделать так, чтобы пользователь примерно понимал, что надо сделать, чтобы что-то сделать. Четкая связь и минимальная разница между действием пользователя и ожиданием результата от системы.
Бэкэндер - разработчик, которые решает задачи бизнес логики. Пользователи бэкэнда -это фронетенд. Бэкэндеру можно косячить, поскольку его косяки и костыли не будут так явно бросаться в глаза.
Начну издалека.
Недостаток компетенции бэкэндера видно не сразу. Да и не всегда вобще их можно увидеть, потому что конечный пользователь может не заметить торможения или багу списать на свою криворукость. Пользователь не избалован высоким качеством разработок. Во всяком случае в сфере, где месяц пользования сервиса стоит дешевле кофе. Да еще дешевизна вычислительных ресурсов дает фору быдло-коду выполняться быстро, хотя под капотом может быть кромешный ад, в котором, выполняется 50+ процессов, не имеющих никакого отношения к результату, который так ждет пользователь. Обычно в таком случае, на код ревью, разработчики говорят: “так исторически сложилось.”
К делу.
В моем проекте работает фронтендер. Это уже 3ий или 4ый фронтер за 2 месяца. На самом деле всех их я сменил почти в первый месяц работы.
В процессе поиска фронта, у меня сложилось впечатления, что соотношения зарплат и компетенции во фронте - значительно хуже, чем скажем..соотношения здравого смысла в пакете Яровой. Такое впечатление, что имея опыт в пол года на codeacademy, человек уже как минимум middle. И скорее всего, русский - не родной язык.
Вобщем, я нашел фронтера и доволен им,но стал замечать, что мои ожидания стали отличаться от результатов. Все фронтендеры, с которыми мне удалось поработать, не хотят комлпесно решать задачу фронта.
Им подавай задачу, они ее делают. Пишут код. Я как будто работаю с бэкэндером, только он пишет на фронте. Фронтендер, с которыми я работаю - легко бы могли стать бэкэндером, просто потому что игнорируют, либо не уделяют должное внимание проработки связи между пользователем и откликами системы.
Пример.
Проще говоря, если надо сделать диалог, то они делают диалог. Этот диалог будет отличаться от фронтендера моей мечты тем, что:
- Нет плавного появления диалога ( отсутствует анимация )
- Нет выравнивания элементов и они заходят за поля
- И много других мелочей
Именно мелочи, но дьявол именно там =)
Иными словами, это бэкендер, который думает, что он фронтендер.
Пока я еще ищу фронтендера своей мечты, начинаю думать, что такая вовлеченность может быть только у людей, не работающих за оклад.
Что думаете об этом?