Intro

Sistem manajemen rekrutmen berbasis Laravel dan React/Inertia.js ini benar-benar jadi game changer karena fiturnya yang serba otomatis. Untuk perusahaan, kamu bisa mengelola seluruh recruitment funnel dalam satu dasbor—mulai dari pasang loker, memindahkan kandidat antar tahap (seperti screening ke interview), hingga kirim undangan wawancara secara instan. Admin juga punya kontrol penuh buat utak-atik data master, kelola akun pengguna, sampai kustomisasi status seleksi biar pas banget sama kebutuhan operasional kamu. Beberapa fitur yang ada di aplikasi ini, diantaranya:

  1. Untuk Perusahaan
    • Manajemen Rekrutmen: Membuat, mengubah, menerbitkan, dan membatalkan publikasi lowongan kerja.
    • Pelacakan Pelamar: Melihat dan mengelola lamaran yang masuk.
    • Corong Rekrutmen (Recruitment Funnel): Memindahkan kandidat melalui berbagai tahapan (Skrining, Wawancara, Asesmen, Penawaran).
    • Penjadwalan Wawancara: Mengirimkan undangan wawancara kepada kandidat.
    • Profil Perusahaan: Mengelola branding dan rincian informasi perusahaan.
  2. Untuk Pencari Kerja
    • Pencarian Kerja: Menjelajah dan menyaring lowongan berdasarkan kategori, lokasi dan tipe pekerjaan.
    • Pembuat Resume (CV): Mengelola riwayat pendidikan, pengalaman kerja, keahlian dan data pribadi.
    • Riwayat Lamaran: Memantau status pekerjaan yang telah dilamar.
    • Lamaran Pekerjaan: Melamar pekerjaan dengan satu klik menggunakan CV yang tersimpan.
  3. Untuk Administrator
    • Manajemen Data Master: Mengontrol semua opsi pilihan (Tingkat Jabatan, Tipe Pekerjaan, Kategori, Keahlian, dll).
    • Manajemen Pengguna: Mengawasi seluruh pengguna dan perusahaan.
    • Konfigurasi Sistem: Mengelola tahapan dan status rekrutmen.

Instalasi App

Berikut langkah-langkah untuk menginstal aplikasi ini dari GitHub:
  1. Klon Repositori
    git clone <repository-url>
    cd Recruitment
  2. Instal Dependensi PHP
    Gunakan Composer untuk menginstal dependensi backend:
    composer install
  3. Instal Dependensi JavaScript
    Gunakan npm atau yarn:
    npm install atau yarn install
  4. Konfigurasi Aplikasi
    • File Environment: Salin file contoh untuk membuat konfigurasi lokal.
      cp .env.example .env
    • Generate App Key:
      php artisan key:generate
    • Konfigurasi Database: Buka file .env dan perbarui pengaturan database sesuai pengaturan lokal Anda:
      DB_CONNECTION=mysql
      DB_HOST=127.0.0.1
      DB_PORT=3306
      DB_DATABASE=Recruitment_db
      DB_USERNAME=root
      DB_PASSWORD=
      Catatan: Pastikan Anda telah membuat database (contoh: Recruitment_db) di server MySQL Anda sebelum melanjutkan.
  5. Pengaturan Database
    Jalankan migrasi dan seeder untuk menyiapkan struktur database dan data awal (termasuk pengguna admin, kategori, dan peran/roles):
    php artisan migrate --seed
    Atau jalankan secara terpisah:
    php artisan migrate dan php artisan db:seed
  6. Konfigurasi Email & Antrean (Queue)
    Aplikasi ini menggunakan Laravel Queues untuk mengirim email secara asinkron.
    • Konfigurasi Mail Driver: Di file .env, atur kredensial server email Anda. Untuk pengembangan lokal, gunakan Mailtrap:
      MAIL_MAILER=smtp
      MAIL_HOST=sandbox.smtp.mailtrap.io
      MAIL_PORT=2525
      MAIL_USERNAME=username_anda
      MAIL_PASSWORD=password_anda
      MAIL_ENCRYPTION=tls
    • Konfigurasi Queue Driver: Setel koneksi antrean ke database:
      QUEUE_CONNECTION=database
  7. Pengaturan Penyimpanan File
    Buat tautan simbolis agar file yang diunggah dapat diakses melalui web:
    php artisan storage:link
  8. Menjalankan Aplikasi
    Buka dua terminal terpisah:
    • Terminal 1 (Backend):
      php artisan serve
      Aplikasi akan tersedia di http://127.0.0.1:8000
    • Terminal 2 (Frontend):
      npm run dev atau yarn dev
  9. Kredensial Default (Seeder)
    Gunakan kredensial berikut untuk masuk sebagai Administrator:
    • Email: admin@test.com
    • Password: test
  10. Informasi Tambahan
    • Queue Worker: Jika notifikasi email aktif, jalankan worker antrean untuk memproses tugas:
      php artisan queue:work
    • Production Build: Untuk membuild aset frontend untuk peluncuran produksi:
      npm run build atau yarn build