Memvisualisasikan Tim Terdistribusi menggunakan Felt

Dec 01 2022
Pekerjaan jarak jauh akan tetap ada. Salah satu tantangan kerja jarak jauh adalah ketidaksesuaian zona waktu.

Pekerjaan jarak jauh akan tetap ada. Salah satu tantangan kerja jarak jauh adalah ketidaksesuaian zona waktu. Bayangkan Anda memiliki seorang Insinyur Perangkat Lunak yang bekerja di Bay Area dan seorang Desainer Produk yang bekerja di Portugal. Sebagai karyawan baru, penting bagi setiap orang untuk memahami zona waktu yang digunakan rekan satu tim mereka. Hal ini memungkinkan anggota tim untuk mengatur jam kolaborasi yang tumpang tindih, mengatur komunikasi asinkron yang efektif, dan mencegah penundaan saat seseorang perlu meminta bantuan untuk membuka blokir.

Peta Tim Terdistribusi dibangun menggunakan Felt

Menurut pendapat saya, setiap buku pegangan karyawan dengan <100 karyawan harus menyertakan peta di mana karyawan baru dapat dengan cepat mengetahui zona waktu tempat rekan kerja mereka bekerja.

Proses 3 langkah yang saya ambil untuk membuat peta anggota tim terdistribusi melibatkan pembuatan alat Geocoder CSV yang digunakan untuk mengubah spreadsheet menjadi spreadsheet dengan koordinat lintang dan bujur tambahan, menambahkan formulir tempat pengguna dapat mengunggah CSV mereka, dan membuat visualisasi data dalam Merasa alat pemetaan.

  1. Membuat Alat Geocoder CSV

Geocoding adalah proses mengambil deskripsi atau teks dari suatu lokasi dan mengubahnya menjadi koordinat geografis seperti lintang dan bujur.

Dalam kebanyakan kasus, potongan informasi lokasi yang Anda miliki dari anggota tim mencakup alamat, kota, negara bagian, atau negara. Untuk menampilkan penanda pada peta, Anda harus menerjemahkan informasi lokasi yang diberikan ke dalam koordinat geografis (lintang, bujur). Anda mungkin tidak ingin membuat penanda secara manual meskipun mudah melakukannya di Felt. Saya berangkat untuk mengotomatiskan bagian dari proses ini.

Sementara banyak API Geocoding ada di luar sana, saya memilih untuk melakukan pencarian cepat dengan membaca file CSV yang berisi semua lintang dan bujur setiap kota di dunia dan mencocokkannya dengan individu. Kami mungkin tidak ingin membuat penanda yang tepat untuk lokasi seseorang karena alasan keamanan. Untuk kasus penggunaan saya saat ini di mana saya benar-benar hanya menggunakan informasi kota untuk menyetel koordinat lintang dan bujur, ini berfungsi dengan baik.

Diagram Sistem Pekerjaan Backend

Di bawah tenda, server Node.js yang saya atur untuk melakukan pekerjaan melakukan hal berikut di atas menggunakan kombinasi pustaka populer seperti express, multer, dan fast-csv.

Satu hal menarik yang saya pelajari selama proses ini bergantung pada ukuran file CSV Anda, Anda tidak bisa begitu saja membuang file tersebut ke server Anda dan memprosesnya sekaligus karena keterbatasan memori. Anda perlu memecahnya menjadi beberapa bagian dan memproses setiap bagian sebelum menggabungkannya di bagian akhir. Mungkin aman untuk mengatakan peta yang memvisualisasikan tim terdistribusi ini dimaksudkan untuk tim <150 orang. Karena kendala saat ini, spreadsheet kami mungkin akan berisi jumlah baris dalam perkiraan yang sama.

2. Buat Formulir untuk mengunggah CSV

Formulir yang saya gunakan untuk mengunggah CSV untuk dikirim ke server backend saya untuk melakukan transformasi pada CSV melibatkan beberapa komponen utama.

Formulir HTML

Komponen pertama menambahkan elemen formulir yang akan digunakan untuk mengirimkan file CSV ke titik akhir tertentu. Komponen kedua melibatkan penambahan elemen input yang digunakan untuk memilih dan mengunggah file. Atribut utama yang perlu diperhatikan di sini pada elemen input termasuk membuatnya wajib sehingga pengguna tidak dapat mengirimkan tanpa file dan menambahkan tanda centang untuk jenis file menjadi CSV.

<form method="POST" action="/submit" encType="multipart/form-data">
                <h1>CSV Geocoder</h1>
                <div>
                  <input type="file" id="file" name="geocode" required accept='.csv' />
                </div>
                <br>
                <div>
                  <button>Upload</button>
                </div>
              </form>

Tiga langkah yang saya gunakan untuk membuat visualisasi peta adalah mengunggah CSV untuk membuat semua penanda untuk anggota tim, mengaktifkan lapisan zona waktu, dan terakhir menambahkan gambar ke setiap penanda.

Beberapa hal menarik terakhir yang ingin saya jelajahi di masa depan…

  1. Di manakah tempat yang jaraknya paling sama bagi semua anggota tim untuk menjadi tuan rumah di luar kantor?
  2. Mengintegrasikan API Geocoding Sumber Terbuka dengan Alamat
  3. Tambahkan Opsi Geocoding Terbalik
  4. Penanganan Kesalahan yang Kuat (Data Sel Hilang, Header Tabel Salah Label/Hilang)

Saya akan mencari untuk menyebarkannya pada akhir minggu setelah melakukan beberapa TLC pada desain dan menambahkan penanganan kesalahan tambahan pada server untuk kasus tepi!

Lihat Peta di Felt:

Apakah Anda memiliki pertanyaan atau umpan balik? Saya ingin sekali mendengarnya!

email: [email protected]

Indonesia:https://twitter.com/duckduckquy

Dirasakan:https://felt.com/

Sumber data:https://www.kaggle.com/datasets/juanmah/world-cities