Setelah bekerja sebagai bartender selama kurang lebih 5 tahun, saya memasukkan barang-barang saya ke dalam ransel dan naik kereta kembali dari ibu kota, pulang ke provinsi, ke orang tua saya. Saya memutuskan bahwa 25 tahun hanyalah usia di mana saya harus mengambil keputusan, dan bukan sebotol wiski. Karena dua gelar pendidikan tinggi saya tidak dapat memberi saya penghasilan normal, dan saya sama sekali tidak tertarik dengan keahlian saya, saya memutuskan untuk mencoba menjadi seorang pengembang. Saya pikir, kenapa tidak? Modis, dibayar dengan baik, tidak perlu bekerja dengan tangan dan berdiri - sempurna! Itu bahkan tidak menghentikan saya bahwa sebelumnya saya bahkan tidak tahu nama bahasa pemrograman. Bagaimana saya menjadi seorang pengembang - 1Maka, setelah menghabiskan sisa uang saya untuk tiket pulang dan berlangganan di sini, saya membuat jadwal belajar dan pada tanggal 10 November 2015, studi saya dimulai. Untungnya bagi saya, pemrogramannya ternyata tidak hanya modis, tapi juga menarik. 10 level pertama diselesaikan dalam sebulan dan ternyata sangat menarik. 10 level kedua juga diselesaikan dalam sebulan, tapi Tuhan, berapa kali saya membenturkan kepala ke dinding (secara harfiah) mencoba menyelesaikan masalah, tetapi masih terus menyiksa Google dan hal yang memeriksa masalah (saya tidak tidak ingat apa namanya). Saya beristirahat sejenak untuk liburan Tahun Baru dan melanjutkan dengan semangat baru. Dari level 20 hingga 30 saya menyelesaikannya selama satu bulan lagi dan di sini sudah sulit (saya masih belum menyelesaikan masalah dari level 27 - itu sangat buruk). Saya baru saja akan melanjutkan maraton saya selama satu bulan lagi, tetapi kemudian muncul kursus untuk pengembang Java, di perusahaan paling keren di kota. Setelah menyelesaikan tugas tes, saya diterima. Kegembiraan saya tidak mengenal batas; Saya sudah bermimpi tentang bagaimana setelah kursus mereka akan mempekerjakan saya (ini adalah praktik standar untuk perusahaan ini). Kursusnya ternyata keren banget: 10 kuliah masing-masing kurang lebih 2 jam selama 2 bulan dan 10 tugas pekerjaan rumah berdasarkan materi kuliah (JDBS, JPA, Hibernate, SQL, Servlet, rest, maven, git). Untuk setiap topik, perlu untuk menulis aplikasi kasar yang sederhana dan berfungsi. Namun hal yang paling keren tentang kursus ini adalah bahwa tugas-tugas ini diperiksa oleh pengembang dari perusahaan ini dan mereka melakukan tinjauan kode yang (SANGAT) pilih-pilih. Dan mereka tidak menerima tugas tersebut sampai mereka puas dengan tingkat penulisan program tersebut. Saya menyelesaikan semua tugas dan mereka bahkan (ironisnya) memberi saya sertifikat kelulusan kursus. Keesokan harinya saya menelepon dan meminta untuk datang bekerja bersama mereka. Mereka mengirimi saya tugas tes dan saya gagal total. Bahkan tidak ada wawancara. Itu menyakitkan. Makan kesedihan dengan selai, saya membuka-buka berita tentang perusahaan ini, memimpikan balas dendam, tetapi tiba-tiba saya menemukan pengumuman bahwa mereka sedang mengadakan acara di mana mereka akan mengumpulkan semua orang yang tertarik dan dekat dengan IT untuk meniru prosesnya. tim nyata yang mengembangkan produk, di mana pelanggannya adalah karyawan perusahaan. Dalam dua minggu, saya dan tim menulis penjadwal tugas yang “cukup bagus” di Swing. Saya sangat bangga saat itu karena terdiri dari 4000 baris kode. Dalam dua minggu saya belajar banyak tentang Swing sehingga saya bisa mempelajarinya sendiri selama dua bulan, itu keren. Mengunyah kue jahe dengan gembira, saya kembali membuka website perusahaan ini dan bermimpi bekerja di sana, tetapi tidak ada lowongan, tetapi ada hackathon. Tentang topik layanan mikro (rumah pintar). Spring perlu digunakan untuk terhubung ke sensor emisi dari rumah pintar dan memproses informasi darinya secara memadai. Pemenangnya adalah orang yang algoritme pemrosesannya paling merespons situasi yang disimulasikan oleh karyawan. Saya memenangkannya! Dan sebulan kemudian saya diundang ke sana untuk wawancara! Langsung! tanpa tugas tes. Aaaand drum roll - Aku gagal lagi! Karena saya tidak bisa menulis algoritma pembalikan string! (garis terbalik KARL!!!). Itu adalah kegagalan epik dan facepalm pada saat yang bersamaan. Saya menjadi semakin tersinggung oleh mereka. Tapi saya memutuskan bahwa akan konyol untuk berhenti sekarang dan melanjutkan. Saya menemukan situs acmp.ru (ini bukan iklan, tapi keren) untuk masalah pemrograman Olimpiade. Dan dia menetap di sana selama dua bulan. Terdapat arsip soal (700 buah) yang diurutkan berdasarkan tingkat kesulitan. Saya mulai dengan yang paling sederhana. Ketika dibutuhkan waktu sekitar 5-6 jam untuk menyelesaikan satu masalah, saya menyerah. Saya memecahkan 301 soal dan mengikuti beberapa Olimpiade di situs ini. Belajar menulis algoritma pembalikan string. Saya juga hafal algoritma quick sort dan insertion sort, mempelajari apa itu grafik, apa itu grafik dan bagaimana mencari sesuatu di dalamnya, apa itu pemrograman dinamis dan bagaimana menggunakannya, tapi sialnya saya masih bisa' Saya tidak mengerti cara kerja algoritma cambuk -Morris-Pratt. Sambil terengah-engah dan menatap dengan marah ke perusahaan yang sama, saya mengirimkan resume saya ke semua perusahaan lain di kota. 3-4 perusahaan merespons posisi front-end. Setelah menyelesaikan tugas pengujian dalam javascript (saat saya menyelesaikannya, saya berlari berputar-putar sambil berteriak - Penutupan, apa itu penutupan??!!) . Saya lulus wawancara dan dipekerjakan untuk posisi bangga sebagai pengembang JavaScript junior. Ini terjadi tepat setahun setelah dimulainya studi saya. Setelah bekerja di sana selama dua bulan saya menyadari:
  1. InternetExplorer diciptakan oleh Setan agar para pengembang akan menderita seumur hidup mereka.
  2. Google Chrome jauh lebih rumit dari yang terlihat. Ini sebenarnya sepuluh kali lebih sulit daripada yang terlihat.
  3. Saya benci pengembangan frontend.
Ada suatu masa ketika saya menghabiskan 3 hari menulis animasi kompleks yang terdiri dari 30 objek sehingga dapat berfungsi di mana saja dan melakukannya dengan lancar dan indah. Dan kemudian para desainer mengubahnya tiga kali lagi (TIGA kali!!) sepenuhnya! Dan tepat di puncak kebencian saya, muncul lowongan untuk java juniora. Saya baru saja berlari ke sana. Tugas tes, wawancara, telepon dan sekarang saya sudah menjadi junior java yang bangga dengan gaji dua kali lipat, tepatnya di bulan April. Perusahaannya sangat kecil - 6 orang. Terlibat dalam pemodelan proses (pemodelan penuh pekerjaan besar, tambang dan tambang, pemodelan dan kemudian optimalisasi perusahaan logistik). Saya sendiri jarang melakukan modeling. Saya sedang menulis editor 3D untuk memvisualisasikan model (saat ini kami memilikinya, tetapi mulai terhenti pada kumpulan data yang besar). Teknologi OpenGL diimplementasikan di Java di perpustakaan lwjgl. Itulah yang saya lakukan sekarang. Muat data langsung ke kartu video, shader, dan banyak geometri analitik. Tepat dua tahun kemudian, pada tanggal yang berkesan (10 November), saya berencana menjalani sertifikasi dari Oracle Java SE 8 Programmer (1Z0-808). Dan sekarang saya seorang spesialis java bersertifikat (lulus dengan 87%, tesnya sebenarnya mudah... bodoh sekali bekerja dengan kompiler). Seperti itu. Semoga beruntung semuanya. PS Dan HR dari perusahaan yang sama sudah menelepon saya tiga kali dan menawari saya pekerjaan. Saya menolak untuk saat ini. Saya membalas dendam.