CodeGym /จาวาบล็อก /สุ่ม /จูเนียร์ → อาวุโส คุณต้องเป็นนักพัฒนา Java อาวุโสกี่ปี
John Squirrels
ระดับ
San Francisco

จูเนียร์ → อาวุโส คุณต้องเป็นนักพัฒนา Java อาวุโสกี่ปี

เผยแพร่ในกลุ่ม
ดังที่คุณอาจทราบแล้ว ตามธรรมเนียมแล้วนักพัฒนาในอุตสาหกรรมเทคโนโลยีจะแบ่งออกเป็น สี่ระดับตามระดับวุฒิการศึกษา: จูเนียร์กลางอาวุโสและหัวหน้าทีม หรือห้า ถ้าคุณรวมผู้ฝึกงานด้านการเขียนโค้ดเป็น "ทหาร" ที่มีอันดับต่ำสุดของอุตสาหกรรมการพัฒนาซอฟต์แวร์ แน่นอนว่าการไล่ระดับสีเหล่านี้ค่อนข้างมีเงื่อนไขและเปิดกว้างสำหรับการตีความ ทั้งนี้ขึ้นอยู่กับบริษัทหรือประเทศนั้นๆ ซึ่งมักจะสร้างความสับสนให้กับผู้เริ่มต้นเขียนโปรแกรมที่อยู่ในช่วงเริ่มต้นอาชีพด้านการพัฒนาซอฟต์แวร์และสงสัยว่าอะไรที่จำเป็นจริงๆ ในการเติบโตจาก Junior coder ไปสู่ ​​Senior Developer จูเนียร์ → อาวุโส  ต้องใช้เวลากี่ปีในการเป็น Java Developer อาวุโส - 1และนี่คือคำถามที่เราจะพยายามตอบในวันนี้ ใช้เวลานานแค่ไหนในการเป็น Senior Java Developer?

3 ถึง 7 ปี

ตามปกติ ไม่มีความเห็นพ้องต้องกันในอุตสาหกรรมเทคโนโลยีว่าคุณควรใช้เวลานานเท่าใดในการเลื่อนระดับจากนักพัฒนาระดับจูเนียร์ไปยังระดับอาวุโส และมักจะไม่เป็นเช่นนั้น เนื่องจากมีปัจจัยมากมายที่มีบทบาทที่นี่ เช่น ประเภทของบริษัทที่คุณทำงาน สภาวะตลาดงาน การพัฒนาส่วนบุคคลของคุณ ความสัมพันธ์ในทีม และอื่นๆ แต่ถ้าคุณแยกจำนวนปีที่เฉพาะเจาะจงจากความคิดเห็นที่แตกต่างกันหลายร้อยรายการ โดยเฉลี่ยแล้วจะใช้เวลา 3 ถึง 7 ปี โดยค่าประมาณเฉลี่ยต่ำสุด (ของจำนวนปีที่เข้าสู่สถานะอาวุโส) จะอยู่ที่ประมาณ 2-3 ปี (ในสถานการณ์ที่เหมาะสมและในบริษัทที่มีการเลื่อนตำแหน่งบ่อยครั้ง) และสูงสุดคือ 10 ถึง 15 ปี ดังที่นักพัฒนาที่มีประสบการณ์หลายคนชี้ให้เห็น มันยังขึ้นอยู่กับว่าคุณหมายถึงอะไรในการไปถึงระดับอาวุโส:

ความคิดเห็น

“ ชื่อเรื่องไม่แน่นอนแตกต่างกันไปในแต่ละสถานที่ โดยทั่วไปแล้ว ฉันมองนักพัฒนาอาวุโสว่าเป็นบุคคลที่มีความสามารถในการกระโดดเข้าสู่ฐานโค้ดที่ซับซ้อนและประสบความสำเร็จ เป็นเจ้าของคุณลักษณะที่สำคัญที่นำไปใช้ตั้งแต่ต้นจนจบ เป็นผู้นำ/ช่วยเหลือนักพัฒนารุ่นเยาว์ให้ก้าวหน้า ติดตามเทคโนโลยีล่าสุดและดีที่สุด และค้นหาว่าอะไรที่เหมาะกับคุณ และอะไรที่ไม่ใช่ ฯลฯ จากมุมมองนั้น ฉันสังเกตว่าการเดินทางนั้นใช้เวลา 5 ปีหรือมากกว่านั้น อีกครั้ง อย่าปล่อยให้ชื่อจริงหลอกคุณ บางแห่งโปรโมตเกินจริง บางแห่งก็เลิกใช้ชื่อทั้งหมดไปพร้อมกัน (ทุก dev เป็น SDE ที่มี payscales ต่างกัน) และส่วนใหญ่เป็นการเติบโตที่ไม่ใช่ด้านเทคนิคซึ่งต้องใช้เวลาค่อนข้างมาก” Wes Winn ผู้มีประสบการณ์กล่าวนักพัฒนาซอฟต์แวร์ทำงานที่ Smartsheet ตามAndrew Sharpe วิศวกรซอฟต์แวร์พนักงานของ VMware อายุ 10-15 ปี: "อาจมีประสบการณ์ 10-15 ปี ที่ VMware เรามี MTS หลายระดับ ถึงจุดสูงสุดในตำแหน่ง Senior MTS จากนั้นเป็น Staff Engineer หลายระดับ ถึงจุดสูงสุดในตำแหน่ง Staff Engineer อาวุโส และสุดท้ายคือ Principal Engineer ดังนั้นจึงสามารถใช้ชื่อ “อาวุโส” ได้หลายระดับ” Rajkumar Bhaduri ผู้จัดการ R&D ของ TEOCO Corporation ชี้ให้เห็นจำนวนปีอาจขึ้นอยู่กับประเทศที่คุณทำงานอยู่ด้วย: “1–2–3 ปีในอินเดีย 10-20 ปีในสหรัฐอเมริกา” “ในสายตาของผู้จัดการฝ่ายจ้างงาน ซึ่งมีความคิดเห็นเดียวที่เกี่ยวข้องจริงๆ คือเมื่อพวกเขาได้งานที่มีตำแหน่งเป็น 'Senior Software Developer' ซึ่งไม่ใช่ก่อนหน้านี้ คุณสามารถใช้เวลาหนึ่งทศวรรษในการจัดส่งซอฟต์แวร์เชิงพาณิชย์ แต่ไม่มีใครสนใจ สิ่งที่คุณต้องการคือชื่อนั้น ฉันได้รับตำแหน่งโดยการออกจากนายจ้างที่มีการเติบโตในอาชีพการงานที่ช้ามาก (MS) และรับตำแหน่งอาวุโสที่ NoA ฉันจะได้งานนั้นได้อย่างไร พัดผู้สัมภาษณ์ออกไป ฉันจะทำอย่างไร ประสบการณ์สิบปีก็ไม่เสียหาย” แบ่งปันประสบการณ์ของเขาเกี่ยวกับเรื่องนี้ Tim Cowley อดีตวิศวกรซอฟต์แวร์อาวุโสของ Nintendo

จะเป็น Senior Java Developer เร็วขึ้นได้อย่างไร? เคล็ดลับและคำแนะนำ

เนื่องจากจำนวนปีที่คุณต้องใช้ในการเป็นผู้อาวุโสอาจแตกต่างกันมาก คุณแน่ใจว่าสามารถทำทุกวิถีทางเพื่อทำให้สำเร็จเร็วขึ้นได้ ต่อไปนี้คือเคล็ดลับและคำแนะนำเล็กน้อยจากนักพัฒนาซอฟต์แวร์ที่มีประสบการณ์เกี่ยวกับวิธีเข้าถึงระดับอาวุโสโดยเร็วที่สุด

1. สร้างรากฐานความรู้ที่เกี่ยวข้องกับการเขียนโปรแกรมที่แข็งแกร่ง

บ่อยครั้งที่การมีความรู้อย่างแน่นแฟ้นในวิชาที่เกี่ยวข้องกับการเขียนโปรแกรมขั้นพื้นฐานจะช่วยให้คุณก้าวหน้าอย่างมากตลอดอาชีพการงาน วิชาเหล่านี้ประกอบด้วยการคิดเชิงคำนวณคณิตศาสตร์และพีชคณิตบูลีนโครงสร้างข้อมูลอัลกอริทึม รูปแบบการออกแบบกระบวนทัศน์การเขียนโปรแกรม และอื่นๆ คุณไม่จำเป็นต้องเรียนรู้ทุกอย่างแน่นอน แต่ยิ่งพื้นฐานทางทฤษฎีของคุณแข็งแกร่งขึ้นมากเท่าไหร่ ความก้าวหน้าในอาชีพการงานก็จะง่ายขึ้นในภายหลังเท่านั้น

2. ให้เวลาและความพยายามอย่างเพียงพอเพื่อฝึกฝนภาษาโปรแกรมของคุณให้เชี่ยวชาญอย่างแท้จริง

จากนั้น แน่นอนว่าคุณต้องใช้ความพยายามมากพอที่จะเชี่ยวชาญภาษาโปรแกรมของคุณ Java ในกรณีของเรา และเทคโนโลยีที่ใช้ร่วมกับมัน มีหลายวิธีในการเรียนรู้ทฤษฎี Java เช่นหนังสือเรียน หลักสูตรการเรียนรู้ออนไลน์ หรือบทช่วยสอนบน YouTubeเป็นต้น การได้รับ ประสบการณ์ภาคปฏิบัติที่เพียงพอและเข้าใจวิธีการใช้ภาษาเป็นอีกขั้นหนึ่ง แม้ว่าคุณจะไม่ควรหยุดเรียนรู้ตลอดอาชีพการเขียนโปรแกรม แต่การเรียนรู้พื้นฐานของภาษาอย่างแท้จริงเมื่อผู้เริ่มต้นดูเหมือนจะเป็นปัจจัยสำคัญที่ทำให้ความรู้ของคุณพัฒนาไปได้เร็วเพียงใด

3. เรียนรู้ Java frameworks ที่เป็นที่นิยมมากที่สุด

ขั้นตอนต่อไปคือการเรียนรู้ Java frameworks ที่เป็นที่นิยมมากที่สุด ยิ่งมากยิ่งดี และวิธีการใช้งาน เริ่มด้วย Spring และ Hibernate เนื่องจากเฟรมเวิร์กเหล่านี้ถูกกล่าวถึงบ่อยที่สุดในคำอธิบายสำหรับตำแหน่งนักพัฒนา Java

4. เลือก IDE ของคุณและเชี่ยวชาญ

คำแนะนำที่ดีอีกข้อจากนักพัฒนา Java ที่มีประสบการณ์คือการเริ่มทำความคุ้นเคยกับการใช้ IDE ที่คุณเลือก IntelliJ IDEA และ Eclipse เป็น IDE ที่ได้รับความนิยมสูงสุดสำหรับนักพัฒนา Java อย่างไรก็ตาม ในกรณีที่คุณไม่ทราบ CodeGym มีปลั๊กอินพิเศษสำหรับ IntelliJ IDEA ซึ่งช่วยให้คุณเริ่มทำความคุ้นเคยกับ IDE นี้ในขณะที่ยังเรียนรู้พื้นฐานของ Java บน CG

5. เรียนรู้การใช้ระบบควบคุมเวอร์ชัน

การใช้ระบบควบคุมเวอร์ชัน GitHub ซึ่งเป็นระบบที่ได้รับความนิยมมากที่สุด เป็นอีกหนึ่งองค์ประกอบประจำของงานของคุณในฐานะนักพัฒนา Java ดังนั้นจึงเป็นการดีกว่าที่จะสำรวจและเรียนรู้รายละเอียดทั้งหมดเกี่ยวกับเครื่องมือเหล่านี้ด้วย

6. พยายามปรับปรุงโค้ดของคุณอย่างต่อเนื่อง

มีหลายวิธีในการปรับปรุงคุณภาพรหัสของคุณ เช่น การอ่านรหัสของผู้อื่น การใช้การตรวจทานรหัส หรือการอ่านหนังสือเกี่ยวกับเรื่องนี้ หนึ่งในสิ่งที่ได้รับความนิยมมากที่สุดคือClean Code: A Handbook of Agile Software Craftsmanshipโดย Robert C. Martin

7. เรียนรู้เกี่ยวกับสถาปัตยกรรมซอฟต์แวร์

การเรียนรู้เกี่ยวกับสถาปัตยกรรมซอฟต์แวร์เป็นอีกหนึ่งคำแนะนำทั่วไปสำหรับผู้ที่รู้สึกมั่นใจในภาษาและเทคโนโลยีหลักที่เกี่ยวข้องกับการพัฒนา Java

8. เขียนโค้ดทุกวัน

และแน่นอนว่าคุณควรฝึกฝนให้มากที่สุดด้วยการเขียนโค้ด Java ทุกวันหรือบ่อยเท่าที่คุณจะทำได้ เพื่อให้มั่นใจในการนำความรู้และทักษะใหม่ๆ ที่คุณเรียนรู้ไปใช้ในงานของคุณในฐานะนักพัฒนา Java
ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION