Analisis Pasar Kerja
Summary
Deskripsi lowongan itu panjang, tidak konsisten, dan ditulis untuk dibaca sekali. Membaca seratus lowongan untuk menyimpulkan apa yang sebenarnya dicari pasar adalah pekerjaan yang tidak ada yang selesai kalau dikerjakan manual.
Ini tool Python kecil yang mengerjakannya. Dia membaca lowongan untuk posisi Data dan AI, mengambil requirement-nya, hal-hal yang sifatnya nilai tambah, dan level senioritasnya, lalu menaruh hasilnya di dashboard.
Cara kerjanya
Lowongannya masuk dalam format JSONL. Tiap lowongan dikirim ke Gemma 3 lewat Ollama, yang mengembalikan requirement utama, tambahan opsional, dan bacaan soal senioritas. Semuanya masuk ke dashboard Streamlit yang interaktif.
Pipeline-nya disusun dengan domain-driven design. Di skala segini, itu terutama berarti parsing, pemanggilan model, dan pelaporannya dipisah, supaya mengubah satu bagian tidak diam-diam merusak bagian lain.
Teknologi
Python 3.12 ke atas, Ollama dengan Gemma 3, Streamlit, dan uv untuk dependency.
Yang akan saya ubah
Menjalankan modelnya secara lokal itu pilihan yang sadar. Tidak ada biaya per lowongan dan datanya tidak pernah keluar dari mesin saya. Sebagai gantinya, dia lebih lambat daripada panggilan API dan sesekali salah membaca requirement. Untuk tool yang saya arahkan ke beberapa ratus lowongan, itu sisi trade-off yang tepat. Kalau dijalankan tiap hari, tidak.
Source code
Kodenya publik: https://github.com/rasyidev/job-market-analysis