Bagaimana situs dikembangkan dari $ 100.000

gambar

Selama 7 tahun terakhir saya telah mengelola proyek TI individu dalam kerangka studio web yang saya pimpin, dan selama ini saya telah memperoleh pengalaman yang baik bekerja dengan proyek-proyek besar, yang ingin saya bagikan dengan Anda. Klien saya biasanya dari Amerika Serikat, Prancis, dan Jerman, tetapi ada proyek yang selesai di Kanada, Swiss, Denmark, Australia, Jepang, dll. Saya merancang jejaring sosial, lelang online, kontes kebugaran, layanan untuk memilih suku cadang mobil, pengiriman makanan, kantor online untuk menerima dan memproses pesanan, lantai perdagangan, dan jenis layanan lainnya. Seperti yang Anda lihat, proyeknya berbeda, tetapi disatukan oleh satu fitur yang membedakan: pengguna berinteraksi dengan layanan sesuai dengan algoritma yang diberikan. Tugas utama saya adalah memikirkan algoritma-algoritma ini.

Dan jika lebih detail, maka saya harus:

  • mendiskusikan proyek secara detail dengan pelanggan
  • menyusun dokumentasi desain
  • menugaskan tugas ke spesialis
  • periksa implementasi mereka dan keluarkan amandemen
  • menyerahkan fungsionalitas kerja kepada pelanggan
  • ajari dia cara menggunakan layanan ini
  • menandatangani sertifikat penyelesaian dan mentransfer proyek ke departemen dukungan
  • secara berkala terhubung ke tugas-tugas kompleks selama proses pemeliharaan

Saya akan menulis tentang nuansa bisnis saya dan memasukkan benjolan di artikel terpisah. Dan sekarang, sebenarnya, tentang proyek ...

Gajah harus dimakan sepotong demi sepotong


Saya harus segera mengatakan bahwa proyek yang saya kerjakan tidak langsung menghabiskan biaya lebih dari $ 100.000. Proyek-proyek semacam itu sedang dikembangkan secara bertahap dan tahap pertama, yang disebut MVP (Minimum Viable Product), beberapa kali lebih murah. Tujuan dari tahap pertama adalah untuk meluncurkan layanan kerja lengkap dengan fungsionalitas terbatas dan menempatkan pengguna pertama di atasnya dengan persyaratan preferensial apa pun. Penting untuk memantau perilaku mereka melalui Webvisor, atau memberi mereka kesempatan untuk melaporkan bug untuk mengobrol. Segera mengidentifikasi semua kelemahan yang tidak dapat ditemukan melalui pengujian, karena puluhan dan ratusan pengguna dapat menggunakan layanan tidak seperti tester. Paling sering, segera setelah peluncuran uji tahap pertama pengembangan, daftar perbaikan muncul, yang termasuk dalam tahap ke-2.Ini memungkinkan Anda untuk menyesuaikan pengembangan dengan persyaratan pengguna dengan cepat.

Waktu adalah uang


Bahkan sebelum pengiriman tahap pertama, kami menawarkan kepada Pelanggan untuk mendiskusikan dan menyiapkan dokumentasi proyek untuk tahap kedua, sehingga pemuatan tim spesialis bersifat berkelanjutan dan tidak ada downtime. Dengan cara ini kami menghemat waktu pengembangan proyek secara keseluruhan. Belum lagi awal pemrograman tanpa menunggu desain dan tata letak, serta menghubungkan beberapa programmer, berbagi beban kerja di antara mereka dan menggabungkan hasil akhir.

Bicara "untuk optimasi"


Dengan setiap iterasi pengembangan selanjutnya, kode layanan menjadi lebih rumit, jumlah pengguna dan konten meningkat secara signifikan. Saatnya untuk mengoptimalkan kecepatan unduh. Proses ini dimulai dengan optimalisasi struktur server, karena langsung memberikan hasil jangka pendek. Setelah itu, kueri sisi situs dioptimalkan. Kami masih harus kembali ke prosedur ini ketika jumlah pengguna lagi meningkat secara signifikan. Di sini kita dapat berbicara tentang pengujian stres, tetapi dari praktik "sendok adalah jalan menuju makan malam," oleh karena itu pekerjaan optimasi biasanya dilakukan ketika ada alasan obyektif untuk ini.

Katakan padaku cahayaku


Dengan beban tertentu di server dan jumlah pengguna, pertanyaannya menjadi tentang mirroring layanan. Pertama, salinan mirror dari layanan di server lain memungkinkan kami untuk mendistribusikan beban dengan membagi pengguna antara server. Kedua, dalam hal penutupan satu server karena alasan teknis, yang kedua mengambil beban dan pengguna terus menggunakan layanan dari layanan secara terus menerus. Ketiga, struktur seperti itu memungkinkan pengujian fungsional yang baru dikembangkan tanpa risiko bahwa semua pengguna layanan akan menemukan bug yang tidak terduga dalam versi yang berfungsi. Dengan meningkatkan proporsi pengguna yang melihat fungsionalitas baru secara bertahap, Anda secara signifikan mengurangi risiko ini.

Panggil aku, panggil


Tentu saja, tidak ada layanan seperti itu dapat ada tanpa garis dukungan dan tanpa waktu yang diberikan untuk spesialis yang dapat terhubung kapan saja untuk segera memperbaiki kesalahan sistem karena ribuan kemungkinan alasan yang tidak terduga: menggunakan perangkat / sistem operasi / browser yang tidak didukung, tidak mengikuti proses bekerja pada layanan, kesalahan format dokumen, masalah teknis di server, dll. dll.

Terbang secara terpisah, irisan daging secara terpisah


Proses pemeliharaan dan pengembangan berbeda serta tingkat tugas. Dalam hal ini, kami telah lama perlu memisahkan kedua departemen ini - mereka adalah orang yang berbeda dengan proses kerja yang berbeda. Tentu saja, penting dalam hal ini untuk mentransfer hal-hal dengan benar setelah pengembangan fungsi utama, sehingga garis caliper secara terperinci up to date dengan algoritma proyek.


Penting untuk dipahami bahwa pelanggan akan menghabiskan anggaran pengembangan besar hanya jika mereka menerima pengembalian investasi mereka. Dengan demikian, percuma untuk fokus pada literasi teknis dari solusi yang diterapkan dan mempertimbangkan bahwa jika Anda memiliki dokumentasi desain yang terperinci dan Anda benar di semua sisi, karena membuat layanan dipikirkan dan diuji dengan baik, maka Anda keren dan Anda akan membayar banyak dan waktu yang lama. Jika Anda tidak melihat tujuan akhir di mana layanan tumbuh dan tidak menyelidiki tujuan bisnis Pelanggan, berkomunikasi dengan kontraktor promosi (jika ini bukan departemen Anda) dan pertahankan jari Anda pada denyut nadi proyek, maka produk ideal Anda akan berhasil jatuh ke rak, dan Anda kehilangan sumber penghasilan. Sayangnya,sebagian besar pengembang perangkat lunak mengukur pekerjaan mereka dengan tugas teknis yang lengkap dan bangga dengan kemampuan mereka untuk mengabaikan keluhan pelanggan. Ini tidak diragukan lagi penting, tetapi itu tidak akan memberi Anda kemungkinan untuk menghasilkan di masa depan.

Akhirnya aku akan memberitahumu


Saya ingin mencatat bahwa agar bisnis pengembangan web Anda berhasil, tidak perlu berusaha untuk proyek-proyek besar. Ada bidang yang baik untuk bisnis di situs yang murah dan murah, jika Anda menjalankan pekerjaan seperti itu. Sebagai spesialisasi kami, kami memilih pengembangan layanan yang kompleks, karena kami melakukannya dengan baik. Perusahaan kami datang ke bisnis ini dari pengembangan sistem akuntansi, sehingga otomatisasi bisnis adalah "dalam darah kami".

Semoga bermanfaat. Terima kasih untuk semua orang yang membaca!

Saya akan berterima kasih atas komentar konstruktif Anda.

Dan jika Anda tidak menggunakan komentar karena kerendahan hati, politik, agama atau alasan lain, Anda dapat menulis kepada saya di sini .

All Articles