Jika suatu organisasi menggunakan sistem operasi mirip Unix, semua pengembang harus mengetahui perintah terminal dasar untuk menavigasi struktur file, membuat file dan direktori baru, menghapus file, alat bantu pembuatan baris perintah, menggunakan kontrol versi pada baris perintah, dan mungkin skrip shell dasar untuk membantu mengotomatiskan tugas yang berulang. Menurut pendapat saya, kekuatan terminal dan ketersediaan alat baris perintah pada sistem mirip Unix adalah keuntungan besar, ditambah dengan betapa mudahnya menulis skrip untuk mengotomatisasi sejumlah tugas kompleks yang mungkin Anda lakukan secara teratur dasar.
Ada sejumlah aplikasi baris perintah yang mungkin ingin Anda kenali. Alat seperti cat
, grep
, head
, tail
, more
, dan less
berguna untuk sejumlah tugas, mulai dari mencari melalui file untuk menemukan pertandingan teks, untuk membaca file log untuk membantu dalam debugging aplikasi. Kemampuan untuk menggunakan pipa dan mengumpankan output melalui aplikasi ini juga berguna untuk membantu Anda membaca informasi yang tersedia.
Pengetahuan tentang salah satu editor teks utama (vi atau emacs) juga akan sangat membantu. Yang mana yang Anda gunakan adalah pendapat pribadi, tetapi saya akan merekomendasikan menggunakan apa yang digunakan tim Anda (dengan begitu, jika Anda memiliki pertanyaan, akan ada seseorang di tim Anda yang menjawabnya). Dalam pengalaman saya, banyak pengembang "hardcore" Unix lebih suka alat ini daripada IDE. Saya sendiri, saya lebih suka IDE (bahkan di lingkungan seperti Unix), tetapi editor teks memiliki kelebihan mereka ketika membaca file. Sifat baris perintah mereka memudahkan pencarian melalui file dengan alat yang saya sebutkan di paragraf terakhir dan kemudian buka semua file yang cocok dalam salah satu editor ini.
Di luar penggunaan alat yang disediakan dengan sistem operasi, Anda juga ingin mengetahui perbedaan dalam perpustakaan. Perpustakaan yang membuat panggilan sistem (hal-hal yang melibatkan threading datang ke pikiran, sebagai contoh spesifik) mungkin akan berbeda di seluruh sistem operasi. Makefile yang memiliki flag untuk dikompilasi pada arsitektur tertentu atau untuk OS tertentu juga berpotensi menimbulkan masalah. Mengetahui sistem operasi mana yang digunakan akan membuat ini lebih mudah - Anda dapat menemukan referensi yang membahas bagaimana mengimplementasikan fungsi tertentu dalam OS tersebut. Namun, ini adalah sesuatu yang saya harapkan Anda dapat mengambil on-the-job (terutama untuk sistem operasi yang biasanya digunakan di lingkungan perusahaan dan bahwa individu tidak sering memiliki akses ke, seperti Solaris).