Lewati ke isi
Tingkat tampilan

Bicarakan proyekmu

05 / bawah kota

Yang tidak terlihat menentukan umur kota.

Di bawah jalan ada pipa dan kabel. Di bawah sistemmu ada bahasa pemrograman, kerangka kerja, basis data, dan server.

Bawah kota: teknologi yang kami layani

Arti daftar ini: kami bisa membangun dengan, merawat, atau memindahkan sistem dari teknologi berikut. Daftar ini tidak berarti semuanya cocok untukmu. Pilihan alat kami putuskan setelah tahu masalahnya.

Bahasa

  • PHP
  • JavaScript
  • TypeScript
  • Python
  • Dart
  • SQL
  • Bash
  • Kotlin
  • Swift

Backend

  • Laravel
  • CodeIgniter
  • Node.js
  • Express
  • NestJS
  • FastAPI
  • Django

Frontend

  • Vue.js
  • Nuxt
  • React
  • Next.js
  • Astro
  • Svelte
  • Tailwind CSS
  • Livewire
  • Inertia

Panel admin

  • Filament
  • Laravel Nova

Mobile

  • Flutter
  • React Native
  • Expo
  • Android (Kotlin)
  • iOS (Swift)

Basis data

  • MySQL
  • MariaDB
  • PostgreSQL
  • SQLite
  • SQL Server
  • MongoDB
  • Redis

Geospasial

  • PostGIS
  • QGIS
  • Leaflet
  • MapLibre
  • GeoServer

Data & AI

  • Pandas
  • scikit-learn
  • PyTorch
  • Jupyter
  • pgvector
  • RAG
  • API model bahasa

Visualisasi

  • D3.js
  • Chart.js
  • Apache ECharts
  • Metabase
  • Three.js

Cloud

  • AWS
  • Google Cloud
  • Azure
  • VPS mandiri

DevOps

  • Docker
  • Docker Compose
  • Caddy
  • Nginx
  • GitHub Actions
  • GitLab CI
  • Linux (Ubuntu)

BaaS & pesan

  • Firebase
  • Supabase
  • FCM

Integrasi

  • REST
  • GraphQL
  • Webhook
  • n8n
  • OAuth 2.0
  • SSO

Keamanan

  • OWASP ZAP
  • Burp Suite
  • Nmap
  • Trivy
  • fail2ban
  • ufw
  • Let's Encrypt
  • WireGuard

Pengujian

  • PHPUnit
  • Pest
  • Playwright
  • Vitest
  • k6

CMS

  • WordPress
  • Strapi
  • Directus

Jalur modernisasi

Dari apa ke apa, dan kenapa. Tidak semua jalur perlu ditempuh. Kami mulai dari yang risikonya paling besar.

  1. Dari: CodeIgniter 3 atau PHP lama Ke: Laravel dan PHP 8.4

    Alasan: Versi lama tidak lagi mendapat tambalan keamanan. Versi yang masih didukung juga lebih mudah dirawat.

  2. Dari: MySQL lama Ke: MariaDB 11 atau PostgreSQL + PostGIS

    Alasan: Mendapat pembaruan keamanan dan bisa mengolah data lokasi.

  3. Dari: Shared hosting Ke: Docker + Caddy di VPS

    Alasan: Tiap aplikasi terisolasi, jadi masalah di satu situs tidak menjalar ke situs lain. HTTPS terpasang otomatis.

  4. Dari: Unggah manual lewat FTP Ke: CI/CD dari git

    Alasan: Setiap terbit tercatat siapa dan kapan, dan bisa dibatalkan.

  5. Dari: Monolit lama Ke: API + frontend modern (Next.js atau Vue)

    Alasan: Sistem bisa dikembangkan per bagian tanpa membongkar semuanya.

  6. Dari: jQuery Ke: Vue atau React

    Alasan: Antarmuka lebih terstruktur dan lebih mudah diuji.

  7. Dari: Kata sandi saja Ke: Autentikasi berlapis dan passkey

    Alasan: Kata sandi yang dicuri tidak lagi cukup untuk masuk.

  8. Dari: Spreadsheet tersebar Ke: Basis data dan dasbor

    Alasan: Satu sumber data, dengan jejak siapa mengubah apa.

  9. Dari: Cadangan manual Ke: Cadangan otomatis yang teruji pulih

    Alasan: Cadangan yang belum pernah dipulihkan belum bisa disebut cadangan.

  10. Dari: Pemantauan saat ada keluhan Ke: Pemantauan otomatis dan peringatan dini

    Alasan: Masalah diketahui sebelum pengguna yang melaporkannya.

  11. Dari: Data pribadi tanpa peta Ke: Inventaris data sesuai UU PDP

    Alasan: Ini kewajiban hukum. Selain itu, data yang tidak diketahui letaknya tidak bisa dijaga.

  12. Dari: Laporan statis Ke: Analisis dan model prediksi

    Alasan: Keputusan diambil dari data hari ini, tidak dari rekap bulan lalu.