Битва разработчиков: сразу три профессии финтеха
Разработчики – IT-специалисты, которые создают программное обеспечение для какого-то проекта. Но разработчик разработчику – рознь. Есть фронтенд и бэкенд, есть те, кто создают игры, и те, кто отвечает за финтех-приложения… Чем они отличаются друг от друга, и какими знаниями нужно обладать, уточняли у СТО Globerce Capital – Кумара.
Читается за
Начнем с широкого понятия. Разработка сама по себе – это создание ПО или приложений для разных нужд. Основная задача – писать код под определенные задачи, тестировать и решать проблемы, если они выявляются. В общем, делать так, чтобы финальная программа работала корректно и отвечала ожиданиям, как заказчика, так и конечного потребителя.
Кумар: “Разработчики создают IT продукты – сервисы/приложения/сайты компании, которые затем используются клиентами либо сотрудниками компании. Если мы говорим об IT компании, то это – core функция.
В детстве я участвовал на олимпиадах по математике. Мне нравились логические задачи. В старших классах я познакомился с программированием и понял, что в нем даже больше того, что привлекало меня в математике”.
Разработчик отвечает либо за серверную часть, либо за клиентскую, либо за обе сразу. Здесь и будем разбираться в тонкостях.
Кто такой разработчик
Бэкенд-разработчик
Занимается серверной частью, то есть обработкой и хранением данных, обновлением баз данных и взаимодействием с другими системами. Основное поле его работы – базы данных, хранящиеся “под капотом”, а запросы, которые он обрабатывает, приходят от фронтенд-разработчика.
Фронтенд-разработчик
Занимается клиентской частью, то есть тем, что конечный пользователь видит на своем экране, неважно, в приложении или на сайте. Он также отвечает за клиентский опыт, разрабатывает необходимые функции и внешний вид страницы. Например, всплывающие подсказки, вид и функция корзины в интернет-магазине и так далее.
Фулстек-разработчик
Занимается разработкой и серверной части, и внешней клиентской или разработкой полного цикла – от создания макета до настройки инфраструктуры.
Кумар: “Как разработчик я занимался проектированием сервисов, непосредственно написанием кода, поиском и исправлением ошибок, оптимизацией, изучением и тестированием внешних интеграций, периодически – коммуникацией с разработчиками этих интеграций”.
Чем занимается
Бэкенд-разработчик
Он создает компоненты и функции, которые будут доступны пользователю через интерфейс. В его обязанности входит обеспечение правильной работы всех функций сайта, организация и работа с базами данных, разработка алгоритмов работы финального продукта, интеграция с внешними сервисами, тестирование всех компонентов.
К примеру, если вы оплачиваете товар в интернет-магазине, то результат работы бэкенд-разработчика – авторизация пользователя, идентификация его данных, соединение с платежным шлюзом, передача информации, сама оплата, отправка уведомлений пользователям и предоставление данных по заказу на соседний сервер.
Основные языки программирования – Python, Ruby, PHP или Java.
Фронтенд-разработчик
Фронтендер берет макет и создает удобный для пользователя продукт. Для него важно, чтобы финальный продукт выглядел эстетично на всех экранах, при этом, не перекрывалась никакая важная информация, а пользователю было удобно и понятно. Также ему необходимо следить, чтобы все скрипты работали корректно, кнопки функционировали, как надо.
Его основные задачи – разработка пользовательского интерфейса, верстка страниц, добавление интерактивности (например, анимации при определенных действиях пользователя), ну и тестирование продукта с последующей оптимизацией.
Языки его работы – HTML, CSS и JavaScript.
Фулстек-разработчик
Так как он объединяет в себе знания и навыки фронтенда и бэкенда, в его задачи входит создание продукта под ключ. Он проектирует архитектуру продукта, разрабатывает внутренние и внешние части, взаимосвязывает все с базами данных, тестирует и администрирует весь продукт.
Кумар: “Если мы говорим о разработке в финтехе, тут есть свои особенности и подводные камни. Одно из важных отличий от других сфер – большое количество разнообразных интеграций. Это банковские системы, государственные сервисы и другие поставщики данных. Соответственно, нужно правильно работать с большим количеством разнородных и чувствительных персональных данных. Также, в финтехе повышенные требования к безопасности – необходимо всегда думать о возможных уязвимостях в коде, проходить аудит, проводить пентесты и закрывать найденные уязвимости”.
Что должен знать
Бэкенд-разработчик
В большой степени он погружен в бизнес-процессы. Поэтому ему важно не просто “кодить”, а подстраивать все под конкретные задачи и цели. Если вы никогда не знали, как работает тот же самый автокредит с воронкой продаж, то не сможете разработать все фильтры и срезы, даже если у вас будет хорошее ТЗ. Во всем необходимо разбираться досконально.
Есть и базовый пакет знаний, необходимый бэкенд-разработчику. Это знание серверного языка программирования и API, понимание основ юнит-тестов, умение проектировать базы данных, знать все о сетевой безопасности. Ну и самое важное – понимание основ работы фронтенда. Ведь работать необходимо сообща.
Фронтенд-разработчик
Основные навыки – кроссбраузерная и адаптивная верстка, знание CSS-фреймворков, препроцессоров и HTML-шаблонизаторов. Верстка по макету – важный навык, потому что с него и начинается вся фронтенд-разработка. Другими словами, необходимо перенести макет в веб и сделать его реальным.
Помимо этого, необходимо уметь пользоваться системой контроля версий и знать фреймворки – организовывать мгновенный обмен данными с сервером через API.
Фронтенд-разработчик постоянно следит за обновлениями в программах, особенно в сборщиках проектов (код, который определяет последовательность действий при автоматическом запуске продукта) – билдерах.
Фулстек-разработчик
Мы уже сказали, что фулстек объединяет в себе задачи бэкенда и фронтенда. А значит, и нужны и те, и другие знания. Помимо этого, понадобятся и soft skills, например, быстрое переключение между разными задачами.
Карьерный рост
Кумар: “Разработчик, с ростом своих технических навыков и опыта, может повышать свой грейд до senior разработчика. Дальше возможен рост по технической части – техлид, архитектор, а также с уклоном в менеджмент - тимлид, CTO.
К примеру, моя история. До Globerce Capital я занимался собственным стартапом, мобильной игрой-викториной про Алматы. Но пандемия и локдаун внесли свои коррективы, проект пришлось заморозить. После этого я вышел на работу в Aviata, а мой друг - в Globerce Capital. Спустя месяц я перешел в Globerce Capital в качестве лида команды, которая разрабатывала софт для мониторинга инфраструктурных датчиков. Через какое-то время перешел в команду цифровой ипотеки. Постепенно я выполнял все больше обязанностей техлида и со временем органически стал техлидом. По такому же сценарию я вырос до CTO.
Тут важна и сама компания – готова ли она к росту сотрудников. В Globerce Capital нет многих сдерживающих факторов и ненужной бюрократии. Инициатива приветствуется – если можешь делать больше и лучше, просто делаешь больше и лучше. Не нужно ждать официального согласования, чтобы улучшить процесс или проект, либо взять на себя какой-то дополнительный функционал (конечно, не в ущерб текущим обязанностям). Ну и как оказалось, тут классные ребята и атмосфера, способствующая реализации крутых проектов”.
Рекомендуется к прочтению
What to read next
Казахстанские банки начали внедрение стандарта ISO 20022 для модернизации платежных систем, а активы банков страны выросли на 6,7 трлн тенге за 2024 год.
Наш редактор Катерина уже делилась своим опытом взаимодействия с Chat GPT, но это – не мнение профессионала и исследователя. Мы решили погрузиться еще ...
Это интервью отличается от остальных. Чаще всего мы говорим с теми, у кого уже все получилось. А на этот раз – с теми, за кого болеем и верим, что все еще впереди.