Статьи

Войти в ИТ: профессия back-end developer

Быть программистом сегодня престижно. Но насколько реально стать разработчиком, не заканчивая профильный вуз? РАБОТА.TUT.BY продолжает знакомить своих читателей с профессиями из ИТ-сферы. В этот раз мы решили рассказать о профессии, которая на 100% связана с информационными технологиями. Кто такой back-end developer (бэкенд разработчик), мы выясняли вместе с белорусской ИТ-компанией Wowmaking, которая разрабатывает мобильные игры и приложения.

О своей работе рассказал руководитель команды back-end разработчиков Wowmaking Александр Ермалович.

Войти в ИТ: профессия back-end developer

Чем занимается back-end developer? В чем разница между front-end и back-end разработкой?

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

Для примера возьмем Инстаграм: front-end разработчик отвечает за загрузку приложения, навигацию по разделам и т.д, а набор постов и фотографий для показа он получает с сервера, где все хранится и с которым работает back-end разработчик.

В целом back-end разработчик отвечает за серверную часть программ и приложений, написание алгоритмов и их работу.

Какие задачи стоят перед back-end разработчиком?

Основная задача back-end разработчика — создавать надежный, отказоустойчивый сервис, полностью покрывающий требования, в нашей компании, например, мобильного приложения. Как правило, над написанием кода трудится целая команда программистов и их задачи будут значительно отличаться в зависимости от позиции в команде — junior, middle, senior, lead. На более низких уровнях программист, решая поставленную задачу, пишет код и тестирует его, а на более высоких — в задачи может входить проектирование баз данных, выбор стека технологий, на которых будет реализовываться проект, и других элементов в зависимости от потребностей продукта.

Для начинающих back-end разработчиков написание кода, т.е реализация неких алгоритмов будет основной задачей первые несколько лет. От качества кода зависит правильность работы приложения, его скорость, производительность, объем потребляемых ресурсов сервера.

Как ты пришел в эту профессию?

Все началось с момента, когда старшему брату для уроков информатики купили компьютер. Я тоже стал интересоваться написанием простейших алгоритмов на языке Pascal, хотя был еще в классе шестом. Позже в школе стал ходить на курсы по программированию, мне это нравилось, и я твердо для себя решил — хочу стать программистом. Родители идею поддержали и создавали условия для развития. После школы поступил в БГУИР на профильную специальность. С третьего курса начал подрабатывать по специальности и после университета остался в этой сфере: занимался разработкой сайтов и CRM-систем, позже сосредоточился на back-end разработке. В сферу мобильных приложений попал года три назад и сейчас занимаюсь разработкой серверной части для них.

Ни на секунду не разочаровался в сделанном еще в школе профессиональном выборе. Со временем работать в ИТ-сфере в Беларуси стало очень престижно и финансово привлекательно.

Есть мнение, что в back-end разработку могут взять на работу без профильного образования?

Я считаю, что в области back-end разработки профильное образование, если не обязательно, то является большим плюсом. Учеба в университете дает основы, которые ты не сможешь получить за месячный курс или прочитать в книге. В то же время я знаю несколько случаев, когда люди успешно меняли сферу деятельности и становились back-end разработчиками. К нам на собеседования приходил человек не из ИТ-сферы, но уже с опытом в разработке сайтов, делал их для друзей. Его взяли, и он долго у нас работал, был достаточно успешен в программировании.

Что нужно знать и уметь back-end-программисту?

Если человек решил стать back-end разработчиком, то ему необходимо определиться с языком программирования. Лучше изучать востребованные на рынке языки. Для back-end разработки в Беларуси по-прежнему остается актуальным язык PHP, к нему же можно добавить Python, Ruby, Go, Java. В университете или на курсах одним из первых необходимо будет освоить основы алгоритмизации и основы работы с базами данных.

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

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

Какие ресурсы можешь посоветовать новичкам и коллегам для профессионального развития?

На начальных этапах погружения в back-end разработку, если начинающий программист выбрал для себя в качестве профильного языка программирования PHP, полезно будет почитать книги “Изучаем PHP 7. Руководство по созданию интерактивных веб-сайтов” Д.Скляра и “PHP. Объекты, шаблоны и методики программирования” Мэтта Зандстра. Сам я постоянно читаю интернет-ресурс habr.com, чтобы быть в курсе трендов и новинок в ИТ-сфере.

Как отдыхаешь от работы? Получается ли соблюдать work-life баланс?

Сейчас передо мной ставятся задачи, которые требуют вовлечения не только в рабочее время. Решение некоторых может потребовать не несколько часов, а достаточно продолжительный промежуток времени. То есть я буду заниматься другими задачами или проводить время с семьей, но нерешенный вопрос будет меня преследовать и, возможно, каким-то утром я придумаю решение.

Свободное время посвящаю семье, стараюсь побольше времени проводить с ребенком. Из хобби могу назвать футбол, но чаще смотрю его, чем играю. Я болельщик футбольного клуба “Арсенал”, и за 16 лет я не пропустил ни одного их матча, минимум — смотрел в записи.

Соблюдение work-life баланс у программистов, как мне кажется, зависит от позиции и вовлеченности. Я одержим задачами, особенно нерешенными. Раньше я часто оставался на работе допоздна. С появлением ребенка стал больше времени уделять семье, но я все равно не представляю свой выходной день или отпуск без ноутбука. Когда аудитория в мобильных приложениях большая, в любой момент может что-то пойти не так: ваши мобильные приложений могут дать сбой, который не найдет даже самый квалифицированный тестировщик, и нужно будет оперативное вмешательство. Насколько я вижу, все мои знакомые программисты поступают подобным образом.

Back-end разработчики чаще интроверты или экстраверты? Можешь нарисовать портрет типичного back-end разработчика?

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

В то же время освоившись в какой-то компании, эти люди раскрываются по другому, показывая свою эрудицию и чувство юмора. Например, я играл в Лиге КВН БГУИР в команде таких же программистов. Но у разработчиков чувство юмора специфическое, основанное на шутках из сети. Раньше программисты были первыми, до кого доходили все мемы, сетевые приколы...

Что ты можешь посоветовать людям, которые решили войти в ИТ и попробовать себя в back-end разработке?

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

Войти в ИТ-сферу не легче, чем в другие. Back-end разработка одна из самых долгих по вхождению, я считаю, все-таки нужен особый склад ума. Чтобы в ней остаться, придется много работать. У меня есть несколько знакомых программистов, которые, наоборот, ушли из ИТ, несмотря на высокие зарплаты в этой сфере, оказалось что это им не по душе. И я считаю это правильным, любая работа должна нравиться, тогда легче добиться успеха в ней.

На первых этапах человек может зарабатывать меньше, чем на старой работе. Сильно прибавить в зарплате после трех месяцев не получится, потому что для разработки это очень маленький срок и за него не наберешь много опыта.

Для человека без технического образования хорошо будет найти знакомого программиста, к которому можно обратиться за советом по своим пробелам. Также полезно будет самостоятельно разработать, например, какой-нибудь сайт, чтобы получить прикладной опыт, погрузиться в каждую строчку кода и понять, что к чему. По самоучителям и Youtube это точно под силу сделать многим.

Вакансии для back-end developers ищите по ссылке.
Вакансии дня