Pertemuan Go Gett Juno - 12 September, Minsk

Halo semuanya, nama saya Anton Tupikov, saya adalah pemimpin tim Pengembangan B2B di Gett.

Gett bukan hanya layanan taksi, tetapi pasar yang dinamis. Ini adalah sistem yang sangat sarat muatan: puluhan ribu pengemudi dan jutaan pelanggan di 120 kota di seluruh dunia menggunakan layanan Gett setiap hari.

Awalnya dikembangkan sebagai aplikasi B2C, Gett dalam 6 tahun terakhir telah meluncurkan beberapa "startup di dalam startup". Ini adalah eksperimen dengan pengiriman, minibus, dan penjualan perusahaan. Banyak dari mereka kemudian berubah menjadi lini bisnis yang sukses. Misalnya, solusi B2B berhasil berfungsi untuk lebih dari 15.000 perusahaan besar, termasuk merek seperti Google, Visa, Gucci, LVMH, Nestle, dll.

Tantangan besar berikutnya yang dihadapi Gett adalah mendapatkan IPO tahun depan. Kami berharap bahwa produk generasi baru akan membantu IPO kami menjadi sukses, dan itulah mengapa diputuskan untuk menggabungkan upaya para insinyur Gett dan Juno terbaik untuk mencapai tujuan ini. Ini adalah tentang mengembangkan solusi produk inovatif dari awal menggunakan tumpukan teknologi paling canggih.

Saya ingin mengundang semua orang ke pertemuan di Minsk pada 12 September dengan dukungan dari komunitas GoWay, di mana sesama pengembang saya akan berbicara tentang tantangan teknis yang mereka hadapi setiap hari dan sedikit tentang apa yang harus kita hadapi di masa depan yang mengerjakan solusi baru.

gambar



Pada pertemuan tersebut, para pembicara akan berbicara tentang tantangan teknis apa yang dipecahkan di Gett menggunakan bahasa Go.
Pembicara:

  • Sasha Grunin , Gett, insinyur backend senior di tim Pengembangan B2B - Sejarah pengembangan di Go in Gett 2018-2019.

    Gett adalah kisah klasik ketika, setelah beberapa tahun mengembangkan monolit, ternyata lebih bijaksana untuk membagi monolit menjadi layanan daripada untuk refactor. Transisi menuju Go bukanlah proses instan: seiring dengan evolusi teknologi, proses-proses di sekitarnya juga telah berevolusi.
    Dalam laporan ini, Sasha akan berbicara tentang bagaimana perusahaan mengembangkan pengembangan di Go dan bagaimana proses pengembangan dan teknologi diatur sekarang.
  • Sagi Kritchbets , Gett, insinyur backend senior di Pricing Team - Teknik canggih (bicara dalam bahasa Inggris)

    Di Gett banyak fungsi berbasis lokasi. Selama setiap pesanan ada kebutuhan untuk mengambil data konfigurasi berdasarkan lokasi GPS. Layanan geo menangani sejumlah besar permintaan dan berada di jalur kritis arus bisnis. Diperlukan bahwa layanan akan merespons dengan cepat dan akan terukur. Layanan area lawas di Gett sepenuhnya didasarkan pada PostGIS, yang mengarah pada hambatan pada DB. Sagi akan berbicara tentang layanan area baru dan implementasi cache geografis terdistribusi dalam memori berdasarkan hex grid dan redis pubsub. Sagi akan melalui algoritma geometri dasar yang digunakan dalam solusi dan tantangan yang harus kami atasi.
  • Ron Ludmer , Gett, Pengembang Backend Senior di Matching & Ride Exchange Team - Semaphore berbasis Redis (bicara dalam bahasa Inggris)

    Ketika popularitas gaya arsitektur layanan microser meningkat, risiko yang muncul dari bekerja dengan sistem terdistribusi menjadi lebih fokus. Satu masalah umum adalah memiliki sumber daya bersama kami diakses dari banyak contoh secara bersamaan, menyebabkan ketidakkonsistenan data. Apa cara terbaik untuk memastikan kebenaran dengan kerusakan minimal untuk efisiensi? Boleh dibilang, cara paling sederhana adalah menggunakan mekanisme penguncian. Ron akan berbicara tentang pendekatan berbeda untuk penguncian terdistribusi, dan cara mereka mengatasi masalah ini di Gett, yang mengarah ke solusi kami saat ini: Kunci terdistribusi berbasis Redis diterapkan di Golang.


Selain laporan yang bermanfaat dari speaker keren, Anda akan menemukan lautan jejaring dan, tentu saja, afterparty! Untuk berpartisipasi, diperlukan pendaftaran .

Dan sekarang sedikit tentang mengapa, saat ini, kami memutuskan untuk bergabung dengan Juno.

Mempertimbangkan fakta bahwa sejak awal segmen B2B Gett menguntungkan secara operasional (dan tunduk pada strategi untuk profitabilitas keseluruhan), ini mendorong Gett untuk membangun kembali proposisi nilainya di sekitar klien korporat dan kebutuhan mereka.

Pada April 2017, Gett membeli Juno , sebuah startup yang beroperasi di New York dengan pusat pengembangan di Minsk. Juno adalah layanan berbagi perjalanan yang didirikan pada 2015. Sejak awal, Juno membuat pernyataan keras tentang dirinya: layanan diluncurkan di New York pada Mei 2016, dan sudah pada September 2016 jumlah perjalanan melebihi setengah juta per bulan. Pada bulan September 2017, jumlah perjalanan yang berhasil melebihi 1 juta. Hari ini, Juno memiliki salah satu posisi terkemuka di pasar transportasi taksi online di New York.

Gett sekarang memiliki prioritas dalam pembaruan teknologi solusi B2B, untuk tujuan ini diputuskan untuk menggabungkan upaya kantor Juno Minsk dan tim Gett RnD Moskow dan Israel.

Platform B2B menutup semua masalah perusahaan terkait perjalanan: dari memesan mobil dan memonitornya, hingga mengendalikan pengeluaran oleh departemen keuangan dan menghasilkan laporan.

Tim Juno, bersama dengan Gett, akan mengerjakan beberapa area layanan:

Koneksi Karyawan
Seringkali, di perusahaan, karyawan tidak dapat secara mandiri menggunakan taksi dan layanan pengiriman: kadang-kadang aplikasi untuk perjalanan diposting melalui karyawan / layanan terpisah. Setiap perusahaan memiliki kebijakan perjalanannya sendiri, dan tugas Gett B2B adalah menyesuaikan sebanyak mungkin dengan spesifikasi setiap klien: sesuaikan akun pribadi Anda, pertimbangkan semua aturan dan kebijakan.

Kontrol biaya
Salah satu masalah yang paling nyata bagi klien yang diselesaikan Gett B2B adalah transparansi biaya transportasi perusahaan. Transparansi tidak hanya menyangkut rincian akun setiap perjalanan, tetapi juga kemungkinan agregasi di satu tempat dari semua biaya yang ditanggung korporasi di setiap kota atau negara. Di masa mendatang, laporan ini digunakan, misalnya, untuk pengembalian pajak PPN.

Gett B2B menyelesaikan masalah ini dengan mengotomatiskan pekerjaan manual administrator dan layanan keuangan. Mereka tidak perlu lagi mengumpulkan cek, mencari tahu detail perjalanan, membuat permintaan biaya ke departemen yang berbeda, memasukkan informasi untuk setiap karyawan secara manual dan memeriksa ulang beberapa kali. Pelanggan dapat menyinkronkan data SFTP atau membuat perjalanan API.

Selain itu, Juno dan Gett akan bekerja bersama di bidang Penagihan, Layanan Konsumen, dan Koneksi Vendor.

Pilihan teknologi Solusi B2B bertujuan untuk secara efisien menyelesaikan masalah yang dihadapi produk digital modern:

  • AWS & Kubernetes membantu beradaptasi dengan beban mengambang yang khas dari pasar dan skala perjalanan-naik secara efektif
  • untuk dapat menyenangkan pelanggan dengan fungsionalitas baru setiap hari diperoleh melalui pengiriman proses Berkelanjutan terkait dengan Jenkins
  • pada titik-titik beban sistem tertinggi, secara efisien dan fleksibel menggunakan sumber daya, mengikuti perkembangan zaman dimungkinkan dengan Go dan Redis
  • Tanggapi dengan cepat dan terapkan perubahan produk, berikan pengalaman pengguna yang hebat, mungkin berkat React / Redux & Ruby
  • untuk menjadi bagian dari arsitektur layanan mikro sambil mempertahankan konsistensi data, berkat CloudAMQP
  • memantau kinerja produk dan memastikan kualitas tinggi dan dimungkinkan dengan bantuan ekosistem untuk memantau dan mencari anomali, termasuk proses PagerDuty, Airbrake, Relic Baru, Datadog dan integrasi berkelanjutan dengan unit terintegrasi, komponen, tes integrasi untuk Java / testNG / Selenium


Jika Anda memiliki pertanyaan, saya akan dengan senang hati menjawabnya di komentar di pos ini. Dan sampai jumpa di pertemuan!

Source: https://habr.com/ru/post/id465617/


All Articles