Membangun Rule Engine yang Dapat Diaudit dengan Python
Bangun rule engine Python yang memisahkan aturan bisnis, mencatat keputusan, dan dapat diuji serta diaudit secara sistematis.
Bangun task scheduler tangguh dengan Python, PostgreSQL, retry mechanism, dan algoritma prioritas untuk kebutuhan backend nyata.
Skill yang dibangun
Merancang schema PostgreSQL untuk menyimpan task, status, prioritas, waktu eksekusi berikutnya, jumlah percobaan, dan pesan error.
Membangun worker Python yang mengambil task siap jalan berdasarkan prioritas dan waktu eksekusi menggunakan query database yang aman.
Menerapkan transaksi, row-level locking dengan SELECT FOR UPDATE SKIP LOCKED, dan pola claim task agar beberapa worker tidak memproses task yang sama.
Membuat retry mechanism dengan batas percobaan, exponential backoff, pencatatan error, serta graceful shutdown untuk scheduler yang lebih tangguh.
Programmer Python tingkat menengah, backend developer pemula, mahasiswa ilmu komputer, dan engineer yang ingin memahami cara kerja sistem penjadwalan tugas seperti pengingat otomatis, pemrosesan laporan, sinkronisasi data, atau pekerjaan batch.
Project outcomes
Kamu akan membangun aplikasi task scheduler berbasis Python dan PostgreSQL. Aplikasi ini bisa mendaftarkan task, memilih task berdasarkan prioritas dan waktu eksekusi, menjalankan pekerjaan melalui worker, menyimpan status success atau failed, dan mencoba ulang task yang gagal dengan jeda bertahap. Di tahap akhir, scheduler mendukung beberapa worker secara aman, logging dasar, graceful shutdown, serta simulasi pekerjaan nyata seperti pemrosesan laporan atau sinkronisasi data.
Task scheduler bukan cuma soal menjalankan fungsi setiap beberapa menit. Di dunia kerja, kamu perlu menangani prioritas tugas, status proses, retry saat gagal, locking agar task tidak diproses dua kali, dan penyimpanan data yang aman. Konsep ini dipakai untuk pengingat otomatis, pemrosesan laporan, sinkronisasi data, sampai pekerjaan batch.
Kamu akan membangun scheduler secara bertahap menggunakan Python 3.10+, PostgreSQL, dan library standar yang benar-benar tersedia. Kita mulai dari model data dan alur eksekusi sederhana, lalu naik ke pemilihan task berdasarkan prioritas, transaksi database, concurrent worker, retry dengan backoff, serta graceful shutdown.
Setiap bagian diarahkan ke proyek akhir yang runnable. Kamu akan mengetik kode lewat guided practice, membedah cara kerja kode pada level eksekusi, lalu mengerjakan tantangan mandiri. Bug yang sering muncul juga dibahas, termasuk race condition, task yang nyangkut di status running, dan retry yang tidak terkontrol. Jadi bukan sekadar hafal syntax, tapi ngerti alasan di balik desainnya.
Bangun rule engine Python yang memisahkan aturan bisnis, mencatat keputusan, dan dapat diuji serta diaudit secara sistematis.
Bangun aplikasi flashcard berbasis Python dengan penyimpanan data dan algoritma pengulangan berjarak untuk belajar lebih teratur.
Bangun pipeline yang menandatangani, menghasilkan, dan memverifikasi provenance artefak dengan Sigstore dan in-toto.
Bangun simulator CPU dengan Python untuk membandingkan FCFS, SJF, dan Round Robin melalui data, perhitungan, dan validasi hasil.