Увійти Реєстрація
Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Документація Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти Інструменти Події
Інше
Про нас Реклама

Питання на співбесіді рівня Junior

548 питань з відповідями в 14 технологіях - від Junior до Senior. Оберіть технологію чи почніть з питання дня.

Не знаєте, з чого почати?

Пройдіть короткий тест - покажемо теми, які варто підтягнути, і питання до них.

Пройти тест

Технології

Laravel

101 питання · 43 теми

Junior 101 Middle 147 Senior 130

PHP

32 питання · 9 тем

Junior 32 Middle 35 Senior 33

Livewire і Filament

36 питань · 8 тем

Junior 36 Middle 41 Senior 36

Vue

36 питань · 9 тем

Junior 36 Middle 37 Senior 35

React

33 питання · 8 тем

Junior 33 Middle 34 Senior 33

Питання дня

REST працює за схемою «запит - відповідь»: клієнт питає, сервер відповідає. Коли клієнту потрібно дізнаватися про зміни одразу, без постійного опитування, використовують постійне з'єднання.

Варіанти:

  • опитування (polling) - запит раз на N секунд. Найпростіше, але створює багато порожніх запитів і затримку до N секунд;
  • Server-Sent Events (SSE) - однобічний потік від сервера до клієнта через звичайне HTTP-з'єднання. Автоматичне перепідключення вбудоване в браузер. Добре для сповіщень, прогресу, стрічок, відповідей LLM;
  • WebSocket - двобічний канал. Потрібен, коли й клієнт часто надсилає дані: чат, спільне редагування, присутність користувачів онлайн.

Laravel Reverb - власний WebSocket-сервер Laravel, сумісний із протоколом Pusher. Застосунок транслює події, а клієнти підписуються через Laravel Echo:

php artisan install:broadcasting --reverb
php artisan reverb:start
class OrderShipped implements ShouldBroadcast
{
    public function __construct(public Order $order) {}

    public function broadcastOn(): array
    {
        return [new PrivateChannel("orders.{$this->order->user_id}")];
    }
}
Echo.private(`orders.${userId}`).listen('OrderShipped', (event) => {
  updateStatus(event.order);
});

Приватні канали авторизуються в routes/channels.php - Reverb пускає лише тих, кому дозволено слухати канал.

Що враховувати в продакшені:

  • Reverb - окремий довгоживучий процес (Supervisor, контейнер), за зворотним проксі з підтримкою WebSocket;
  • ліміт відкритих файлів ОС - кожне з'єднання займає дескриптор;
  • горизонтальне масштабування - кілька серверів Reverb обмінюються повідомленнями через Redis (REVERB_SCALING_ENABLED);
  • події через чергу: трансляція з ShouldBroadcast іде через чергу, тож без воркера повідомлення не надходять.

SSE в Laravel - response()->eventStream() у звичайному маршруті: без окремого сервера, але кожен відкритий потік тримає процес PHP.

Докладніше в документації: Laravel Reverb

Вакансії Laravel рівня Junior

Усі вакансії Laravel Junior
KRONAS Нова
2 дні тому

Junior Backend Developer (Laravel)

Junior Backend розробник, який розроблятиме та підтримуватиме серверну частину внутрішніх і зовнішніх систем. Основний стек: PHP, Laravel, Docker, REST API. Вимоги: досвід Junior Backend від 6 місяців, знання математики та геометрії, вміння працювати в команді та прагнення розвиватися.

Bulls-media
5 днів тому

Junior+ Full Stack Developer

Розробник PHP/Laravel для роботи на фулстеку: розробка та підтримка бекенду на PHP/Laravel і фронтенду на JavaScript/HTML/CSS. Основний стек: PHP, Laravel, MySQL, REST API, Git. Вимоги: 1+ років досвіду в веб-розробці, хороше знання PHP, базово-проміжна рівень Laravel, розуміння JavaScript, HTML/CSS, REST API та OOP. Менторство від досвідчених розробників, робота з реальними комерційними проєктами.

Bulls-media
5 днів тому

Junior + Backend Developer

Junior+ розробник бекенду, який розробляє та підтримує веб-проєкти. Основний стек: PHP, Laravel, SQL, REST API. Вимоги: 1+ років комерційного досвіду PHP/Laravel, розуміння SQL, Git, Linux, MVC та OOP. Плюс: WordPress, Docker, тестування. Робота з реальними проєктами під менторством досвідчених розробників.

Питання рівня Junior з реальних технічних співбесід - 548 питань у 143 темах, розібраних із відповідями. Нижче - теми цього рівня та сусідні рівні, якщо хочете звузити або розширити підготовку.

Інші рівні
Middle 638 Senior 553