Что должен знать джун в 2024. Памятка к техсобесу

Спросили опытных айтишников, которые собеседуют молодёжь.

16 комментариев

Сёння хачу чытаць па-беларуску

Условия в ИТ всё меньше напоминают оазис, особенно на входе. Мест для джунов в этом суровом ландшафте так мало, что работу получают только лучшие. Спросили айтишников, которые проводят собесы (и подсмотрели у компаний), каких знаний и умений они ждут от кандидатов:

Специальность: тестировщик

Кто говорит: QA Lead в Catalogic Software

— Наш продукт диктует специфические требования, но, кажется, эти знания для джуна не будут лишними. 

Универсальные:

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

Docker. Понимать, в чём разница между контейнером и образом. Как запустить/остановить контейнер.

REST API. Знать коды ответов (1хх, 2хх,3хх,4хх,5хх) и что они означают; привести несколько примеров кодов ответов (404, 403, 401, 200, 500, 301). 

Знать как минимум четыре популярных API-метода: GET, POST, PUT, DELETE.

Уметь в Postman или Swagger.

Специфические (для нашей компании):

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

Гипервизор. Базовые вещи: как создать и поставить виртуальную машину, как настроить виртуальную машину, как поставить операционную систему. Файловые системы: какие бывают, преимущества разных файловых систем.

Специальность: Data Engineer

Кто говорит: Data Engineer, опыт 4 года, проводит техсобесы

— В целом требования для Junior Data Engineer касаются прежде всего технологий, которые кандидат должен знать на базовом уровне.

Обязательно спрашиваем:

— Типы данных;

— Структуры данных;

— Физическое хранение данных в БД;

— Различия БД (колоночные, строчные, NoSQL и особенности работы движка каждой из них);

— Алгоритмы, но не на суперглубоком уровне. Спрашиваем про компрессионные алгоритмы, где какие используются. 

— Форматы файлов для хранения больших данных (Parquet, Avro и т. д.);

— OLAP vs OLTP;

— Data Lake, DWH, Data Vault 2.0, Data Mesh; 

— Apache Airflow; 

— Spark (особенности работы с Java и Python API, если кандидат знает Scala — то и с ним тоже);

— Databricks и для чего он нужен;

— Azure, GCP или AWS стак, но его отсутствие некритично. 

— Python. Знания о работе GIL, параллелизме и конкурентности, парадигмам ООП.

Всё на базовом уровне.

Специальность: разработчик на Android

Кто советует: компания Kolesa Group (для Junior 1)

Computer Science

Data Structures

— Знать Collections и Map;

— Знать распространенные реализации;

— Понимать в каких случаях нужны коллекции.

Programming Principles

— DRY; 

— KISS.

OOP

— Знать основную идею ООП;

— Уметь перечислять все принципы с кратким описанием.

Architecture

— Делегирование;

— MVC.

Network

— Уметь работать с сетью любым способом.

Android Platform

Android SDK

— Знать структуру проекта;

— Знать, как открывать экраны и взаимодействовать с пользовательским интерфейсом;

— Знать Manifest и компоненты, которые там перечисляются;

— Знать, как пользоваться ресурсами и стилями.

Android Component

— Знать Activity и Fragment;

— Знать lifecycle и особенности использования.

UI

— Уметь верстать простой дизайн в xml;

— Знать ресурсы.

Threading

— Знать про существование многопоточного кода;

— Thread vs Process.

Test

— Уметь писать простые unit-тесты.

Tools

— Уметь пользоваться логами.

Memory Management

Memory structure

— Знать отличия между типами памяти (оперативная и постоянная). 

GC

— Знать, что в Java не надо руками собирать мусор, и всё на этом :)

Language

Java & Kotlin

— Знать синтаксис;

— Соблюдать code style.

Специальность: разработчик на iOS

Кто советует: Kolesa Group (Junior 1)

Computer Science

Data

  • Знать Collections и Map;
  • Знать распространенные реализации;
  • Понимать, в каких случаях нужны коллекции.

OOP

  • Знать основную идею ООП;
  • Уметь перечислять все принципы с кратким описанием.

Programming

  • DRY;
  • KISS.


Architecture

  • Делегирование
  • MVC

Network

  • Уметь работать с сетью любым способом

iOS Platform

iOS SDK + 3rd

  • App lifecycle;
  • UIViewController lifecycle;

UI

  • Уметь верстать простой дизайн в xib;
  • Autolayout.

Threading

  • Знать про существование многопоточного кода;
  • Thread vs Process.

Tests

  • Уметь писать простые unit-тесты.

Tools

  • Уметь пользоваться логами.

Xcode

  • Знать структуру проекта;
  • Знать как открывать экраны и взаимодействовать с пользовательским интерфейсом;
  • Breakpoints
  • LLDB.

Memory Management

Memory

  • Знать отличия между типами памяти (оперативная и постоянная).

ARC

  • Знать, что в Swift не надо руками собирать мусор, и всё на этом :)

Language

Swift

  • Знать синтаксис, типы;
  • Соблюдать code style.
«Пот и слёзы». Джунов уже в 4 раза меньше! Выжившие делятся секретами
По теме
«Пот и слёзы». Джунов уже в 4 раза меньше! Выжившие делятся секретами
Бешеная конкуренция, зп от 400$. Как выглядит ИТ в Минске — рассказывает джун-джавист
По теме
Бешеная конкуренция, зп от 400$. Как выглядит ИТ в Минске — рассказывает джун-джавист

Читать на dev.by