iTechArt logo

«Айтишный» для начинающих: термины, которые полезно знать на старте работы в IT

Students Lab

Начинающие программисты не сразу способны понять старших коллег с полуслова. Фразы вроде «нужно замержить» или «задеплой комиты» как минимум способны ввести новичков в лёгкий ступор, как максимум – стать причиной панической атаки. 

Вадим Владымцев, Students Lab Coordinator, составил мини-словарь основных IT-жаргонизмов, изучив которые можно быстрее влиться в профессиональную среду.

Начнём с Web разработки :) Отличие Java от JavaScript уже знают все, а вот отличия «фронта» от «бэка» — единицы. 

Фронтенд (от англ. «frontend») — то, что считывается браузером и демонстрируется (запускается) на экране пользователя (CSS, HTML, JavaScript). Речь о самих страницах сайта и связанных с ними элементах – таблицах, кнопках, рекламных баннерах, формах обратной связи и прочем.

Бэкенд (от англ. «back-end») – серверная, иначе говоря, внутренняя часть сайта или приложения. Обычно она отвечает за сохранность и обработку данных. К этой программной части пользователь доступа не имеет. В работе с бэкендом в ход идут языки программирования типа Python, Ruby, Java, PHP, C#, Swift и проч., а ещё системы управления базами данных MySQL, PostgreSQL и др.

Фулстек-разработчик (от англ. «full stack developer» или «full stack engineer») – специалист, который в равной степени способен работать как с внешним, так и с внутренним интерфейсом веб-сайта или приложения. То есть фулстек-разработчики могут заниматься проектами, которые включают базы данных, создание веб-сайтов, ориентированных на пользователя, или даже работать с клиентами на этапе планирования проекта.

Фреймворк (от англ. «framework») – в буквальном смысле программный «каркас» или шаблон, который разработчик наполняет своим кодом. Фреймворки помогают собрать воедино разрозненные куски приложения/программы, повышают скорость и удобство разработки.

В веб-разработке самыми популярными фреймворками являются React, Angular, Vue.js и Node.js. 

Кстати, если у тебя есть базовые знания JS и небольшой опыт разработки Web приложений, то прямо сейчас можно подать заявку на стажировку Junior Full-stack JS Developer, где как раз изучаются все самые популярные фреймворки на проектах приближенных к реальным. Не упусти свой шанс стать Junior JavaScript разработчиком уже сейчас!

Не одним JS единым! Пройдёмся по процессу разработки.

Юзабилити (от англ. «usability») показатель того, насколько тот или иной продукт/интерфейс удобен для пользователей. 

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

  • Удобный дизайн
  • Логичный и структурированный контент
  • Общение с пользователем
  • Возможность отмены действия
  • Ненавязчивые предложения помощи
  • Все возможности на виду

Часто за юзабилити приложения отвечает UI/UX Developer. Он ответственен за применение принципов интерактивного и визуального дизайна на веб-сайтах и веб-приложениях для обеспечения положительного и связного взаимодействия с пользователем.

Рисёрч (от англ. «research») попросту говоря, изучение определенной темы. Задача сделать «рисёрч» в джуниорском айтишном сленге подразумевает необходимость самостоятельно разобраться с темой.

Парсить (от англ. «parse») собирать и обрабатывать данные. В среде разработчиков термин может обозначать поиск и систематизацию информации, размещенной на определенных сайтах, с помощью специальных программ, автоматизирующих процесс.

Мержить (от англ. «merge»). Речь идет об объединении или слиянии веток кода. В ногу с этим термином идёт ещё один - коммитить, и часто между ними возникает путаница. Закомитить означает залить свои изменения (свой код) в ветку, в то время как замержить - объединить свой код с чужим (с другими коммитами). 

Деплой (от англ. «deploy») – многоступенчатый процесс переноса кода на сервер или устройство, где он должен функционировать. В ходе деплоя происходят следующие этапы (ниже приведем один из простейших примеров):

  • Код подгружается на сервер 
  • Ставятся все зависимости, которые необходимы
  • Выполняется сборка, а после нее - миграции (к примеру, меняется структура базы данных с помощью SQL-скриптов)
  • Запускается обновленная версия кода

Продакшн (от англ. «production») версия сайта, программы или приложения, в которой устранены все ошибки и которая доступная конечным пользователям.

Аутсорс (от англ. «outsourcing») – выполнение определенных функций/задач компании внештатными специалистами. Например, iTechArt является аутсорс-компанией. Наши сотрудники разрабатывают программное обеспечение для заказчиков из Западной Европы и США.

Легаси-код (от англ. «legacy code») код, который устарел или по какой-то причине больше не поддерживается, но всё ещё используется.

Нативный (от англ. «native») не измененный и не модицированный. В разработке чаще всего используется в сочетании «нативный код», т.е. исходный. Нативные приложения (англ. native app(lication)s) это прикладные программы, которые были разработаны для использования на определённой платформе или устройстве. Например нативные приложения для iOS написаны на Swift или Objective-C, а для Android написаны на Kotlin или Java. Apple и Google предлагают разработчикам приложений собственные инструменты разработки, элементы интерфейса и стандартизированный SDK; Xcode для iOS и Android Studio для Android

Код-ревью (от англ. «code review») – систематическая проверка кода одним или несколькими рецензентами на предмет ошибок, не обнаруженных на этапе написания кода. В процессе код-ревью устраняются ошибки в форматировании строк, утечка памяти, переполнение буфера и др.

Рефакторинг кода (от англ. «refactoring») переработка исходного кода, которая призвана сделать его «чистым», облегчить его понимание и последующую поддержку. Чистый код имеет следующие свойства:

  • Проходит все тесты, разработанные специалистами по тестированию;
  • Понятен для других программистов: в коде появились уточняющие комментарии о том, что именно значит та или иная строчка, стиль оформления программы соответствует общепринятым правилам;
  • Не содержит дублирования кода;
  • Содержит минимум классов и других движущихся частей.

Если следовать этим свойствам, то на выходе мы получим Чистый код который легче и дешевле поддерживать :)

Для более подробной информации советую прочесть Clean Code за авторством Robert C. Martin

From hard skills, to soft skills. 

Хард скиллы (от англ. «hard skills») професссиональные компетенции IT-специалиста (языки программирования, протоколы и стандарты, системы анализа и т.п.). Наиболее популярные технологии для программистов на июнь 2021 года можно найти на index | TIOBE - The Software Quality Company

Софт скиллы (от англ. «soft skills») компетенции специалиста, которые помогают ему взаимодействовать с коллегами. На стажировках в Students Lab большое внимание уделяется различным софт скиллам, таким как коммуникативность, проактивность, ответственность и самостоятельность. Перед началом занятий менторы проходят специальные курсы для оценки и развития навыков и во время стажировки помогают стажёрам улучшить свои софт скиллы.

Нетворкинг (от англ. «networking») это целенаправленное расширение сети контактов (личных и профессиональных). Нетворкинг способствует максимально быстрому и эффективному решению бытовых и бизнес-вопросов. Его основа – доверительные и долгосрочные отношения людей, основанные на взаимопомощи.

Технологический стек – это пакет инструментов, которые программисты задействуют в работе над проектами. Понятие «стек» чаще всего включает в себя языки программирования, фреймворки, облачные провайдеры, системы управления базами данных, веб-компоненты, дистрибутивы и т.д. А если в твоей голове сразу всплыли тарелки, LIFO и загадочный «Abstract data type», то поспеши подать заявку на стажировку в Students Lab!