สวัสดีทุกคน! ช่วงทดลองงานในตำแหน่งใหม่ของฉันสิ้นสุดลงแล้ว และในที่สุดฉันก็สามารถแบ่งปันประวัติการทำงานของฉันได้แล้ว ฉันอายุ 22 ปี ฉันมีการศึกษาด้านเศรษฐศาสตร์ เมื่อปีที่แล้ว (กุมภาพันธ์ - มีนาคม) ฉันไม่มีทักษะการเขียนโปรแกรมใด ๆ และฉันพบกับ Java ในเกมบน Siemens รุ่นเก่าเท่านั้น (ในรูปแบบของหน้าต่างต้อนรับ "ขับเคลื่อนโดย Java" เมื่อเริ่มเกม) ปีที่แล้วฉันทำงานในแผนกสนับสนุนด้านเทคนิค ฉันจะไม่พูดว่างานนี้แย่หรือฉันไม่ชอบ แต่มันก็ไม่ได้น่าสนใจเป็นพิเศษ และปรากฎว่ามีอยู่ช่วงหนึ่งที่ฉันคิดว่า - คงจะดีถ้ามีงานที่คุณไม่ได้ไปพร้อมกับความรู้สึกว่า "ให้ตายเถอะ ฉันจะได้ทำงานอีกแล้ว" แต่มันก็นำมาซึ่งความสุข ฉันคิดว่า - ฉันจะทำอย่างไรถ้าฉันมีหนึ่งปีที่ฉันไม่จำเป็นต้องหาเงินและฉันสามารถทำทุกอย่างที่ฉันต้องการได้? คำตอบก็มาด้วยตัวเอง - ฉันจะนั่งที่บ้านและเรียนรู้การเขียนโปรแกรม จากนั้นฉันก็ตัดสินใจว่ามันขึ้นอยู่กับฉัน ฉันเข้าใจว่ามันคงเป็นเรื่องยากที่จะเรียนรู้การเขียนโปรแกรมตั้งแต่เริ่มต้น นี่จะเป็นความพ่ายแพ้ชั่วคราวในอาชีพการงานของฉัน (ฉันไม่สงสัยเลยว่า Junior Developer จะได้รับน้อยกว่าที่ฉันทำในงานนั้น) แต่ฉันกลับมองว่ามันเป็นก้าวถอยหลัง เพื่อก้าวไปข้างหน้าสองก้าว ตกลง. พูดไม่ทันทำเลย เนื่องจากฉันไม่มีความเข้าใจภาษาการเขียนโปรแกรมเลย ความคิดแรกของฉันคือศึกษาภาษาที่ฉันเคยได้ยินมากที่สุด (ซึ่งใช้ในการพัฒนาซอฟต์แวร์ในบริษัทที่ฉันทำงาน) - PHP โอเค ผู้หญิงคนนั้นทำให้ฉันเลิกเรื่องนั้น เธอแนะนำว่าในบริษัทของพวกเขา (กำลังพัฒนาแอปพลิเคชั่นมือถือ) ผู้ใช้ Android เขียนด้วยภาษา Java + ดูเหมือนว่าเงินเดือนของพวกเขาจะดี ฉันกูเกิลและกูเกิ้ล คิดเกี่ยวกับเรื่องนี้และตัดสินใจเรียน Java ก้าวแรกของฉันคือความพยายามแบบดั้งเดิมในการเรียนรู้สิ่งใหม่ๆ - ติดอาวุธให้ตัวเองด้วยหนังสือ เชี่ยวชาญทฤษฎี แล้วลุยเลย! นี่คือวิธีที่ฉันได้รับหนังสือของ Horstmann และ Cornell - Java พื้นฐาน มันคือเดือนมีนาคม 2014 โดยทั่วไปแล้ว ตลอดชีวิตของฉัน ฉันแย่มากกับการเรียนสิ่งต่างๆ จากหนังสือ นี่อาจเป็นเพราะวิธีการรับรู้ที่มีอิทธิพลเหนือบุคคล ฉันมักจะเรียนรู้เนื้อหาจริง ๆ เสมอหลังจากที่ฉันได้ฝึกฝนจริง รวบรวมมัน และเล่นกับมันเท่านั้น ดังนั้นความพยายามครั้งแรกของฉันในการเรียนรู้ Javaตามหนังสือ พวกเขาถึงวาระที่จะล้มเหลว แม้ว่าหนังสือเล่มนี้จะดีก็ตาม ที่ไหนสักแห่งในเดือนเมษายนฉันเจอกลุ่ม JavaRush VKontakte จากนั้นทุกอย่างก็ดำเนินไปเหมือนอยู่บนรางรถไฟ การแก้ปัญหา ปัญหามากมาย ควบคู่ไปกับทฤษฎีเล็กๆ น้อยๆ ถือเป็นวิธีที่ดีที่สุดในการเรียนรู้เนื้อหาอย่างชัดเจน (อย่างน้อยก็สำหรับฉัน) ฉันนั่งอยู่ที่บ้าน ฉันนั่งทำงานและตัดสินใจ ตัดสินใจ และตัดสินใจ) ตอนนั้นเองที่ฉันมั่นใจมากขึ้นว่าการเขียนโปรแกรมน่าสนใจสำหรับฉัน ฉันจำไม่ได้ว่าติดอยู่กับสิ่งใดมาก สามเดือนผ่านไป ในระหว่างนั้นฉันก็มาถึงระดับ 20 สำหรับฉันดูเหมือนว่าการเรียนรู้ภาษาเพิ่มเติมจะไปได้เร็วกว่ามากหากคุณได้งานเป็นโปรแกรมเมอร์แล้ว คุณจะอยู่ในสภาพแวดล้อมนี้ 8 ชั่วโมงต่อวัน 5 วันต่อสัปดาห์ และคุณจะพัฒนาได้เร็วมาก ดังนั้นในเดือนสิงหาคม ฉันจึงเริ่มส่งเรซูเม่ออกไป สถานที่สองแห่งส่งงานทดสอบมาให้ฉันด้วยเหตุนี้ฉันจึงไม่ได้รับข้อเสนองานใด ๆ - เมื่อมองย้อนกลับไปฉันไม่แปลกใจเลยแม้แต่ครั้งเดียว - ฉันอาจแก้ไขงานที่ได้รับมาได้ แต่ฉันมีสไตล์การเขียนโค้ดที่ไม่ดีเลย) B นี่เป็นเพียงการลบ JavaRush เล็กน้อย - ตราบใดที่ปัญหาได้รับการแก้ไขและการทดสอบผ่านไป งานก็จะถูกนับ แม้ว่าโค้ดของคุณอาจจะปล่อยให้เป็นที่ต้องการอีกมากก็ตาม ก็เพียงพอแล้วที่จะติดตั้งปลั๊กอิน Checkstyle เดียวกันใน Intellij IDEA และสถานการณ์จะแตกต่างออกไป - มันจะเน้นจุดที่ "สงสัย" ในโค้ดซึ่งจะช่วยให้คุณเขียนไม่เพียง แต่ใช้งานได้ แต่ยังรวมถึงโค้ดที่สวยงามและถูกต้องด้วย อย่างไรก็ตาม ในเดือนกันยายน ฉันถูกเรียกให้สัมภาษณ์ครั้งแรก ตำแหน่งงานว่างโดยประมาณดังต่อไปนี้ - นักพัฒนาทุกระดับเราจะเสนอเงินเดือนที่สอดคล้องกับทักษะ ในการสัมภาษณ์ครั้งนี้ งานมีดังนี้ - มีการมอบส่วนของโค้ด เขียนถูกต้องหรือไม่ และอาจมีปัญหาอะไรบ้าง? ฉันจำไม่ได้ว่าฉันถูกไปกี่อัน โดยทั่วไป จำเป็นต้องจำเกี่ยวกับ Null คำถามเกือบทั้งหมดเกี่ยวกับเรื่องนี้ - คุณไม่ควรเข้าถึงพารามิเตอร์ของเมธอดโดยไม่ตรวจสอบก่อน (ถ้า param != null) จากผลการวิจัย ฉันได้รับข้อเสนอให้ทำงานฟรีในเดือนแรก (เป็นการฝึกงาน) จากนั้นได้รับเงินเดือนที่ต่ำกว่า (แม้จะไม่มาก) เมื่อเทียบกับที่ทำงานที่ฉันอยู่ ฉันเข้าใจดีว่าฉันไม่ควรคาดหวังข้อเสนอที่ยอดเยี่ยม เพราะฉันรู้ทฤษฎีเพียงเล็กน้อย ฝึกฝนใน JavaRush เท่านั้น ประสบการณ์เป็นศูนย์ และอื่นๆ เลยตกลงว่าจะออกภายใน 2 สัปดาห์ (เวลาที่เหมาะสมที่จะลาออกจากที่เก่า) ในขณะเดียวกัน ฉันก็ส่งเรซูเม่ของฉันไปที่บริษัทอื่นด้วย บริษัทนี้เสนอสิ่งต่อไปนี้:
- การฝึกอบรม Java EE 2 เดือน (2 ครั้งต่อสัปดาห์เป็นเวลา 4 ชั่วโมง)
- หากคุณแสดงผลลัพธ์ที่ดี (คุณปกป้องโครงการของคุณซึ่งคุณเขียนมาเป็นเวลาสองเดือนได้สำเร็จ) แสดงว่าคุณได้รับการเสนองาน
- ปฏิบัติงานภาคปฏิบัติที่บ้าน
- หากสำเร็จ คุณจะได้รับเชิญให้เข้าร่วมการทดสอบคอมพิวเตอร์ในสำนักงาน
- หากการทดสอบสำเร็จ คุณจะได้รับการสัมภาษณ์ในวันเดียวกัน
- อะไรคือความแตกต่างระหว่างข้อยกเว้นที่ตรวจสอบและไม่ได้ตรวจสอบ
- คลาส Object มีวิธีใดบ้างและเหตุใดจึงจำเป็น
- มีคอลเลกชันประเภทใดและทำไมจึงมี
- และอีกเล็กน้อยเกี่ยวกับมัลติเธรด
GO TO FULL VERSION