Mobile Applications Completed February 2025

InternTime

Aplikasi presensi mobile mahasiswa magang di PT Belawan New Container Terminal (BNCT) berbasis Flutter dan Firebase, dilengkapi validasi radius GPS (geofencing) dan pelacakan kehadiran real-time.

InternTime.view
LIVE
InternTime Cover Preview

Ringkasan Proyek

Latar belakang dan cakupan sistem
InternTime adalah aplikasi mobile yang dibangun untuk mendigitalkan dan menertibkan pencatatan kehadiran mahasiswa magang di lingkungan operasional PT Belawan New Container Terminal (BNCT). Aplikasi ini mengombinasikan arsitektur modular GetX dengan backend serverless Firebase, menghadirkan sistem absensi mandiri yang memverifikasi kehadiran lewat titik koordinat GPS dan reverse geocoding. Mahasiswa hanya dapat melakukan check-in dan check-out ketika benar-benar berada di dalam radius zona kerja yang ditentukan, lengkap dengan pencatatan alamat fisik, riwayat harian, serta manajemen data akun magang.

Latar Belakang & Kebutuhan

Kendala operasional dan kebutuhan spesifikasi sistem
Pencatatan kehadiran mahasiswa magang sebelumnya masih mengandalkan rekap manual yang rawan kelalaian dan sulit divalidasi keabsahan lokasinya, terutama di area pelabuhan dan terminal petikemas yang luas. Di sisi lain, mesin absensi biometrik kantor utama umumnya dikhususkan untuk staf tetap. Akibatnya, pembimbing lapangan dan tim HR kesulitan memantau kedisiplinan dan rekapitulasi jam kerja magang secara transparan tanpa proses administrasi yang menyita waktu.

Solusi & Desain Sistem

Pendekatan arsitektur dan struktur logika sistem
Mengembangkan aplikasi presensi mandiri yang ringan, responsif, dan berbasis lokasi (location-aware). Solusi ini mengintegrasikan:

Geofencing Otomatis: Menghitung jarak perangkat terhadap koordinat gerbang/kantor BNCT secara real-time sebelum mengizinkan tombol absensi ditekan.
Alur Absensi Cerdas: Membedakan status check-in (absen masuk) dan check-out (absen keluar) dalam satu siklus harian secara otomatis tanpa membingungkan pengguna.
Sinkronisasi Cloud Real-Time: Menyimpan log kehadiran (waktu, koordinat, alamat lengkap, dan status jangkauan) langsung ke Cloud Firestore agar data langsung dapat ditinjau kapan saja.

Pendekatan Teknis & Pemilihan Teknologi

Alasan pemilihan teknologi dan alur proses data
State Management & Arsitektur: Menggunakan GetX Pattern dengan pembagian folder modular (modules, controllers, dan routes) untuk memisahkan logika bisnis dari antarmuka pengguna secara bersih dan terawat.
Kalkulasi Spasial & Geofencing: Mengimplementasikan formula jarak geodesik via geolocator untuk menghitung jarak antara koordinat perangkat dengan titik koordinat BNCT (3.7811413, 98.6880215) dengan batasan toleransi radius 1.000 meter.
Reverse Geocoding: Mengonversi data latitude dan longitude menjadi nama jalan, kelurahan, dan kota menggunakan package geocoding, sehingga log presensi menyimpan alamat fisik yang manusiawi, bukan sekadar angka koordinat.
Struktur Database NoSQL: Mengatur skema koleksi Cloud Firestore berbasis dokumen tanggal mahasiswa/{uid}/presence/{dd-MM-yyyy}, memudahkan pengelompokan riwayat per hari serta optimasi query kalender.
Storage & Profiling: Memanfaatkan Firebase Storage untuk penyimpanan foto profil dengan alur kompresi gambar lokal sebelum upload.

Peran & Tanggung Jawab

Tanggung jawab langsung dalam pengembangan modul
Mengembangkan seluruh aplikasi mobile dari tahap inisiasi UI/UX hingga implementasi fungsional di Flutter.
Mengonfigurasi dan mengintegrasikan layanan Firebase (Authentication, Cloud Firestore, dan Firebase Storage).
Mengembangkan logika validasi geofencing, penanganan izin lokasi (location permission handling), dan konversi alamat.
Menerapkan manajemen state, routing, serta dialog konfirmasi interaktif menggunakan GetX.
Merancang skema penyimpanan data kehadiran harian dan integrasi fitur filter riwayat presensi.

Hasil & Dampak Proyek

Pencapaian fungsional dan pengujian hasil implementasi
100% Digital & Paperless: Menghilangkan kebutuhan absensi manual kertas maupun spreadsheet terpisah untuk peserta magang.
Bebas Kecurangan: Validasi radius GPS mencegah potensi titip absen atau manipulasi kehadiran di luar area terminal.
Transparansi Data: Mahasiswa dan pembimbing lapangan dapat melihat riwayat kehadiran, jam masuk, jam pulang, serta lokasi presensi secara langsung dan akurat.
Performa Cepat: Aplikasi tetap responsif dan hemat konsumsi baterai/data meski beroperasi di lingkungan jaringan area pelabuhan.
Copied email to clipboard!