Deskripsi pekerjaan Google (sebagaimana diposting di situs web mereka) jauh lebih luas daripada banyak perusahaan lain. Ambil posting mereka untuk "Insinyur Perangkat Lunak" di Mountain View :
Persyaratan:
- BS, MS, atau PhD dalam Ilmu Komputer atau disiplin teknis terkait (atau setara).
- Pengalaman pemrograman yang luas dalam C / C ++ dan / atau Java (keterampilan OO yang kuat lebih disukai).
- Beberapa tahun pengalaman desain dan pengembangan perangkat lunak sistem besar, dengan pengetahuan luas tentang Unix / Linux.
- Dasar yang kuat dalam ilmu komputer, dengan kompetensi yang kuat dalam struktur data, algoritma, dan desain perangkat lunak.
- Keahlian coding dalam Python atau Javascript / AJAX, desain database dan SQL, dan / atau pengetahuan tentang TCP / IP dan pemrograman jaringan merupakan nilai tambah.
Mereka tampaknya kurang memiliki contoh tentang keterampilan tertentu, dan lebih banyak contoh tentang menjadi pengembang dan ilmuwan komputer yang cerdas dan mampu. Sudah jelas bahwa mereka mencari orang yang akan belajar di tempat kerja keterampilan yang mereka butuhkan untuk menangani pekerjaan tertentu dalam perusahaan.
Banyak perusahaan kecil jauh lebih spesifik tentang persyaratan mereka. Sudah jelas mereka memiliki posisi tertentu yang ingin mereka isi, dan mereka menginginkan seseorang yang memiliki keterampilan yang relevan sebanyak mungkin sehingga mereka dapat seproduktif mungkin sejak hari pertama mereka bekerja. Sebagai contoh :
Kami mencari seseorang yang memiliki pengalaman signifikan dalam mengembangkan situs web dan / atau aplikasi mutakhir, lebih disukai pada platform open-source (gaya LAMP). Kami ingin seseorang dengan dedikasi kuat untuk standar web dan praktik terbaik pengembangan web. Kandidat yang ideal akan memiliki pengalaman luas dengan pengembangan web berbasis database dan sejarah perkembangan dalam bahasa dinamis.
Jika Anda belum pernah menulis Python atau Django sebelumnya, tidak apa-apa! Sedang mencari ilmuwan komputer pintar dengan minat luas seperti pemrosesan bahasa alami, pemrosesan sinyal digital, pembelajaran mesin, dan banyak lagi. Kami ingin memberi Anda kesempatan untuk menggunakan keterampilan Anda menggunakan membangun platform web yang pertama dari jenisnya dan antarmuka aplikasi yang canggih. Jika Anda memiliki sedikit atau tidak ada pengalaman dalam pengembangan web, berikan Anda kesempatan untuk belajar.
Beberapa pengalaman web di atas keahlian CS Anda akan diakui memberi Anda keuntungan. Pengetahuan tentang Python, Django, PostgreSQL, (X) HTML, CSS, JavaScript (termasuk JSON dan AJAX), standar web, dan praktik terbaik pengembangan web. Anda juga harus memiliki pengetahuan tentang platform gaya LAMP dan kontrol sumber (kami menggunakan Git, tetapi SVN atau CVS adalah permulaan). Yang mengatakan, lebih tertarik pada kemauan untuk bergerak cepat dan keinginan untuk belajar dan berkontribusi daripada kami dalam seberapa baik Anda berpengalaman dalam bahasa atau platform tertentu. Sedang mencari orang yang terbukti, berorientasi pada hasil dengan fokus pada pengiriman.