56 IT-терминов, которые нужно знать

56 IT-терминов, которые нужно знать

Заговорите на языке айтишников.

IT-специалисты постоянно используют слова, которые понятны только людям внутри сферы. Если вы только пришли в разработку, тестирование или менеджмент IT-проектов, этот текст объяснит вам, что такое компилятор, чем performance review отличается от код-ревью и нужен ли вам пет-проект.

Разработка

API (Application Programming Interface) — интерфейс прикладного программирования — соединение между компьютерами или компьютерными программами.

Cloud (облако) — программное обеспечение (ПО) или служба, работающая в интернете, а не локально на компьютере пользователя. 

Git — распределенная система управления версиями файлов и совместной работы.

MVP (Minimum Viable Product) — метод разработки, при котором на рынок выводится новый продукт с базовыми функциями, достаточными, чтобы привлечь внимание потребителей. Конечный продукт выпускается на рынок только после получения обратной связи от первоначальных пользователей продукта.

Pull request — предложение изменения кода в чужом репозитории. С помощью пулл-реквеста разработчик сообщает другим об изменениях, которые отправил в ветку репозитория на GitHub.

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

Архитектура — общий дизайн вычислительной системы, логические и физические взаимосвязи между ее компонентами. Архитектура определяет оборудование, программное обеспечение, методы доступа и протоколы, используемые в системе.

Аутентификация — проверка личности человека для получения доступа к данным или приложению. Доступ к определенным действиям или страницам можно ограничить с помощью уровней пользователей. 

БД — база данных — организованный набор данных, хранящихся и доступных в электронном виде из компьютерной системы. Делятся на реляционные (данные хранятся в виде таблиц и строк) и нереляционные (данные хранятся в коллекциях документов JSON).

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

Библиотека — набор заранее написанного кода, который пользователи применяют для оптимизации задач. Например, библиотека Pillow на Python создана для работы с графикой.

Компилятор — программа, которая переводит компьютерный код, написанный на одном языке программирования (исходный язык), на другой (целевой язык).

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

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

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

Опенсорс — подход к созданию компьютерных программ с открытым исходным кодом. Программа с открытым исходным кодом доступна для всех желающих. 

Пет-проект — небольшой второстепенный проект разработчика, которым он занимается в свободное время. Часто пет-проекты используют для отработки навыков, которые хотят улучшить: например, выучить новый язык программирования, новые шаблоны проектирования или другие технологии и рабочие процессы.

Паттерн (шаблон или шаблон проектирования) — общепринятое решение проблемы проектирования, которая неоднократно повторяется во многих проектах. Разработчики программного обеспечения адаптируют шаблонное решение к конкретному проекту. 

Репозиторий — место хранения пакетов программного обеспечения. Репозиторий программного обеспечения управляется системой контроля версий или менеджерами репозиториев.

Сервер — часть компьютерного оборудования или программного обеспечения (компьютерная программа), которая обеспечивает функциональные возможности для других программ или устройств, называемых «клиентами». Эта архитектура называется клиент-серверной моделью.

Стек — структура данных, которая содержит упорядоченную линейную последовательность элементов.

Фаервол (брандмауэр) — система сетевой безопасности, которая отслеживает и контролирует входящий и исходящий сетевой трафик на основе заранее определенных правил безопасности. Брандмауэр устанавливает барьер между внутренней сетью и глобальной сетью.

Фреймворк — заранее подготовленный набор решений, который решает общие проблемы разработки.

Тестирование

Acceptance — тестирование, проводимое пользователями, клиентами или другими лицами для определения, одобряет ли клиент приложение / программное обеспечение.

Black Box — тестирование, при котором тестировщик не знает, как организована система изнутри. Цель — проверить функциональные возможности с точки зрения поведения при различных комбинациях входящих данных. 

Penetration (pen test) — имитация кибератаки на компьютерную систему для проверки уязвимостей.

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

White Box — тестирование, при котором у тестировщика есть представление о коде или общие знания об архитектуре программного обеспечения.

Нагрузочное (load) — тестирование программного обеспечения, при котором компонент или система ПО подвергаются возрастающей нагрузке для изучения их поведения. 

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

Процессы

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

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

Парное программирование — гибкий (agile) метод разработки программного обеспечения, при котором два программиста работают вместе на одной рабочей станции. Один (драйвер) пишет код, а другой (наблюдатель или навигатор) просматривает каждую строку кода по мере ее ввода. Два программиста часто меняются ролями.

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

Project Management

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

Kanban — метод управления разработкой, реализующий принцип «точно в срок» и способствующий равномерному распределению нагрузки внутри команды. 

One-on-One — встреча в формате «тет-а-тет» между менеджером и подчиненным для обсуждения рабочих вопросов.

Performance review — часть постоянного диалога между руководителями и сотрудниками. Во время ревью обсуждаются текущие показатели, сведения о прошлой производительности и планы на будущее.

SCRUM — подход управления проектами для гибкой разработки программного обеспечения. Скрам делает акцент на качественном контроле процесса разработки.

Waterfall — классическая модель, используемая в жизненном цикле разработки системы для создания системы с линейным и последовательным подходом. Эта модель разделена на разные фазы, и выходные данные одной фазы используются в качестве входных данных для следующей фазы.

Бэклог — список задач, необходимых для поддержки крупного стратегического плана.

Пленнинг-покер (Scrum poker) — игровой метод, который команды разработчиков используют, чтобы угадать объем задач управления проектами. Эти оценки основаны на мнениях всей группы.

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

курс по теме: Математика для анализа и прогнозирования
Сергей Бобровский Data Scientist в отделении AI Platforms в Airbus
 

Компании

Аутсорс — бизнес-практика, при которой компания нанимает третье лицо для выполнения задач, операций или предоставления услуг для компании. 

Аутстаф — модель удаленного найма, при которой выделенная группа IT-специалистов предоставляется сторонним подрядчиком в качестве удаленного ресурса для основного клиента или IT-проекта.

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

HR

Контроффер — ответ работодателя на оффер сотрудника от другой компании.

Онбординг — введение в организацию и адаптация нового сотрудника.

Овертайм — переработка сверх рабочих часов.

Оффер — предложение о работе.

Релокейт — переезд на постоянное место жительства, связанное с работой.

Ремоут — удаленная работа — формат работы вне офиса.

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

Свитчер — IT-специалист, пришедший в IT из других сфер.

Скилы — навыки (знания и умения).

Фидбек — способ оценки проделанной работы или процессов. Обратная связь — это способ понять потребности, требования, результаты деятельности сотрудников в организации.

Ещё статьи
«У нас снова упал прод».
Как разбить приложение на модули.