สวัสดี! ที่นี่เราพูดคุยกันมากมายเกี่ยวกับวิธีการได้งานแรก สิ่งที่คุณต้องศึกษาเพื่อสิ่งนี้ และวิธีประพฤติตนอย่างถูกต้อง ทั้งหมดนี้เป็นสิ่งที่ดีและดี แต่จะทำอย่างไรหลังจากที่คุณได้งานแรก? คุณสามารถผ่อนคลายและไปตามกระแสได้หรือไม่? ไม่ว่ามันจะเป็นอย่างไร การเป็นโปรแกรมเมอร์หมายความว่าคุณจะต้องเรียนต่อ มีอะไรให้เรียนรู้มากมาย เรียนหนัก. ดังนั้นวันนี้ฉันอยากจะพูดเล็กน้อยเกี่ยวกับทิศทางการพัฒนาเพิ่มเติมหลังจากข้อเสนอแรกที่โลภ ไป.
1. เจาะลึกความรู้ในหัวข้อพื้นฐาน
เพื่อให้ได้งานแรก คุณอาจศึกษาหัวข้อพื้นฐานสำหรับนักพัฒนา Java คุณคิดว่านี่จะเพียงพอหรือไม่? ไม่ไม่และไม่ใช่อีกครั้งหนึ่ง สิ่งที่แยกนักพัฒนาที่มีประสบการณ์ออกจากมือใหม่คือความรู้เชิงลึกของพวกเขา และปรากฎว่าความรู้ยังคงเหมือนเดิม แต่นักพัฒนาอาวุโสจะสามารถบอกคุณถึงความแตกต่างเกี่ยวกับสิ่งที่คุณไม่รู้ด้วยซ้ำ ในด้านหนึ่ง คุณสามารถพูดได้ว่าทุกอย่างขึ้นอยู่กับประสบการณ์ เช่นเดียวกับนักพัฒนาที่มีประสบการณ์จึงมีประสบการณ์เนื่องจากเขาได้ "สัมผัส" ทั้งหมดนี้มาหลายครั้งแล้วดังนั้นจึงรู้ทุกอย่างในรายละเอียดดังกล่าว นี่เป็นเรื่องจริง แต่เพียงบางส่วนเท่านั้น นอกเหนือจากการได้รับประสบการณ์อย่างต่อเนื่องในการพัฒนาแล้ว นักพัฒนายังศึกษาทฤษฎีเพิ่มเติมอีกด้วย: จากบทความ หนังสือ วิดีโอ ตัวอย่างเช่น สำหรับการพัฒนานักพัฒนา Java ที่เกี่ยวข้องกับ Spring จำเป็นต้องดูวิดีโอต่างๆ ของ Evgeniy Borisov ตามลิงก์ไปยังวิดีโอที่เขาสร้างอะนาล็อกของคอนเทนเนอร์ Spring หลังจากนั้น ฉันเริ่มเข้าใจจริงๆ ว่า Spring คืออะไรและทำงานอย่างไร ฉันอยากจะทราบว่าคุณต้องเลือกทฤษฎีที่หลังจากศึกษาแล้ว คุณจะเปิดโลกทัศน์ของคุณในหัวข้อนี้ให้กว้างขึ้นจริงๆ หากคุณเริ่มเจาะลึกหัวข้อที่คุณรู้อย่างผิวเผินมากเกินไปในทันที แล้วคุณจะนึกถึงอะไรในหัว? ไม่มีอะไร. นี่จะเป็นการเสียเวลา ดังนั้นเลือกทฤษฎีของคุณอย่างชาญฉลาด2. การพัฒนา (หรือการเรียนรู้) ภาษาอังกฤษ
ภาษาอังกฤษจะมีความสำคัญไม่น้อยสำหรับการพัฒนาของนักพัฒนา ในโครงการที่ดี ความรู้ภาษาอังกฤษไม่ได้ถูกพูดถึงด้วยซ้ำ มันเป็นนัยโดยปริยาย คุณอาจได้งานแรกของคุณโดยใช้ภาษาอังกฤษเพียงเล็กน้อยหรือไม่มีเลย มันเจ๋งมากและคุณโชคดีมาก แต่ก็ไม่ได้เปลี่ยนความจริงที่ว่าคุณต้องปรับปรุง (หรือศึกษา) อย่างเร่งด่วน คุณสามารถทำงานเป็นนักพัฒนาซอฟต์แวร์ที่มีระดับภาษาอังกฤษต่ำได้ แต่นั่นหมายความว่าคุณจะได้รับเฉพาะโครงการที่อยู่ในประเทศ CIS เท่านั้น โครงการที่ใหญ่ที่สุด น่าสนใจที่สุด และทำกำไรได้มากที่สุดเป็นภาษาอังกฤษ หากต้องการย้ายไป "เมเจอร์ลีก" คุณต้องรู้ภาษาตั้งแต่ระดับ B1 ขึ้นไป นักพัฒนาไม่จำเป็นต้องรู้ภาษาในระดับผู้เชี่ยวชาญ เช่น ผู้จัดการโครงการหรือนักวิเคราะห์ธุรกิจ ซึ่งทำงานโดยอาศัยการสื่อสาร แต่ขอแนะนำให้ไปถึงระดับภาษา B2 ระดับนี้จะเพียงพอสำหรับคุณ และตอนนี้สำหรับผู้ชายที่รู้ภาษาอยู่แล้ว: อย่าเพิ่งผ่อนคลาย ภาษามีแนวโน้มที่จะค่อยๆ กลายเป็นลืมไปหากไม่ได้ใช้ อย่าปล่อยให้มันขึ้นสนิมและสนับสนุนด้วยภาพยนตร์ภาษาอังกฤษ ละครโทรทัศน์ หนังสือ บทความ แม้ในขณะที่ทำงานให้กับลูกค้าที่พูดภาษาอังกฤษ การฝึกฝนตามปกติจะไม่เพียงพอ และระดับของภาษาก็ค่อยๆลดลง ให้เขาอยู่บนเท้าของเขา3. การได้รับใบรับรอง (Java, AWS)
ปัจจุบันหลายหลักสูตรออกใบรับรองการสำเร็จหลักสูตร แต่ขอพูดตรงๆ ไม่มีใครต้องการพวกเขา และไม่มีใครมองพวกเขาด้วย เช่นเดียวกับในประกาศนียบัตร อย่างไรก็ตาม มีการรับรองที่สำคัญและสามารถทำให้คุณแตกต่างจากที่อื่นได้ ฉันกำลังพูดถึงการรับรอง Java จาก Oracle และAWS (บริการคลาวด์) ตัวอย่างเช่น การรับรอง Java จัดทำโดยบริษัทที่ได้รับอนุญาตจาก Oracle และจัดเตรียมเงื่อนไขการทดสอบที่เป็นไปตามข้อกำหนดของ Oracle ที่จริงแล้วนั่นคือสาเหตุที่ใบรับรองเหล่านี้ถือเป็นระดับสากล คุณสามารถอ่านเพิ่มเติมเกี่ยวกับใบรับรอง Java จาก Oracle บน JavaRush: เกี่ยวกับประเภทของการรับรองการเตรียมตัวสำหรับการรับรองหนังสือที่ดีที่สุดสำหรับการเตรียมตัวสำหรับการรับรอง การรับรอง AWS มีหลักการเดียวกัน แต่มุ่งเป้าไปที่การเรียนรู้เทคโนโลยี AWS แน่นอนว่าไม่เพียงแต่เปลือกเท่านั้นที่มีความสำคัญที่นี่ แต่ยังรวมถึงระดับความรู้ที่คุณได้รับขณะเตรียมตัวสำหรับการทดสอบด้วย หากคุณมีใบรับรอง พวกเขาไม่น่าจะทำให้คุณมีคำถามเกี่ยวกับเทคโนโลยีนี้4. การศึกษาเทคโนโลยีที่เป็นที่ต้องการ
เทคโนโลยีสารสนเทศก้าวหน้าอย่างต่อเนื่อง และไม่สามารถทำอะไรได้ ถ้าเข้าไอทีแล้วก็ต้องปรับตัว สิ่งที่คุณสอนเมื่อปีที่แล้วอาจไม่เกี่ยวข้องในวันพรุ่งนี้ มันค่อนข้างปกติ ทักษะหลักของนักพัฒนาคือความสามารถในการดูดซับและดูดซึมวัสดุใหม่ได้อย่างรวดเร็วและลืมสิ่งที่ไม่จำเป็นไป ดังนั้น หากคุณต้องการที่จะอยู่ในหัวข้อนี้ คุณจะต้องติดตามสถานการณ์ตลาดอย่างต่อเนื่อง ตัวอย่างเช่น เทคโนโลยีอย่างKubernetesและDocker เป็นที่ ต้องการ ในปัจจุบัน คุณสามารถอ่านเพิ่มเติมเกี่ยวกับความแตกต่างระหว่างพวกเขาได้ในบทความนี้ นอกจากนี้ เทคโนโลยี AWS ยังได้รับความนิยมอย่างมากในปัจจุบัน และการใช้ภาษา Kotlin ก็เติบโตอย่างรวดเร็ว (มันค่อยๆ เริ่มที่จะครองตำแหน่งในตลาดจาก Java) คุณสามารถอ่านเพิ่มเติมเกี่ยวกับเทรนด์ปี 2021 ได้ในบทความนี้5. การศึกษาเชิงลึกเกี่ยวกับเทคโนโลยีเฉพาะ
ผู้เชี่ยวชาญที่มีประสบการณ์บางคนกลายเป็นผู้เชี่ยวชาญในเทคโนโลยีเดียว ปัจจุบันมีข้อมูลมากมายแม้จะเป็นไปในทิศทางของการพัฒนา Java ดังนั้นจึงเป็นไปไม่ได้ที่จะเป็นกูรูในทุกสิ่ง ทำไมคุณไม่เลือกทิศทางที่เป็นที่ต้องการเพียงทิศทางเดียว (เทคโนโลยี กรอบงาน) ซึ่งคุณจะกลายเป็นผู้เชี่ยวชาญที่รู้ทุกมุมมืด ในกรณีนี้ คุณสามารถเป็นผู้เชี่ยวชาญที่มีค่ามากสำหรับบริษัทของคุณได้ โดยจะพาผู้คนมาพบคุณเพื่อตรวจสอบระดับของพวกเขาในเทคโนโลยีนี้ (สัมภาษณ์) คุณจะถูกขอให้ตรวจสอบโครงการที่ใช้เทคโนโลยี "ของคุณ" และให้คำแนะนำ (ความคิดเห็น) เกี่ยวกับการใช้เทคโนโลยีที่มีประสิทธิภาพและถูกต้องมากขึ้น ตามกฎแล้ว บริษัทต่างๆ ต่างก็สนใจที่จะมี "ผู้เชี่ยวชาญ" เช่นนี้ หากคุณบอกฝ่ายบริหารเกี่ยวกับความปรารถนาที่จะเจาะลึกเทคโนโลยีใดๆ ก็ตาม พวกเขาอาจช่วยคุณเลือกเทคโนโลยีที่เหมาะสม (โดยปกติจะเป็นเทคโนโลยีที่เป็นที่ต้องการในบริษัทในปัจจุบัน) และหาที่ปรึกษาในบริษัท ตัวอย่างเช่น ฉันถูกเสนอให้ทำการศึกษาเชิงลึกเกี่ยวกับเทคโนโลยี Camel เนื่องจากมีลูกค้าหลายรายซึ่งเป็นนักพัฒนา Java ที่มีทักษะเฉพาะด้านนี้ ใช่เทคโนโลยีไม่ใช่เรื่องใหม่ทั้งหมด แต่เป็นที่ต้องการอย่างมากและการเป็นผู้เชี่ยวชาญที่แข็งแกร่งในเรื่องนี้คุณจะไม่หลงทางในตลาด: พวกเขาจะฉีกคุณด้วยมือและเท้าของคุณ น่าเสียดายที่ตอนนั้นฉันยุ่งอยู่กับการพัฒนาภาษาอังกฤษและปรับตัวเข้ากับโครงการใหม่ ดังนั้นฉันจึงปฏิเสธ เทคโนโลยีสำหรับการเรียนรู้ "น้ำลึก" อาจแตกต่างกัน: ตั้งแต่ Spring โดยทั่วไปไปจนถึงเฟรมเวิร์กเฉพาะ (Spring Security, Spring Cloud…..) หรืออีกครั้ง เทคโนโลยี AWS เป็นต้น6. เรียนรู้ภาษาการเขียนโปรแกรมใหม่
หนึ่งในตัวเลือกสำหรับการพัฒนาเพิ่มเติมคือการเรียนรู้ภาษาการเขียนโปรแกรมที่สอง ที่นี่ฉันเห็นสามตัวเลือก:- ภาษายูทิลิตี้ที่มักพบในโปรเจ็กต์ Java ตัวอย่างเช่น Groovy ซึ่งเขียนสคริปต์เสริมต่างๆ หรือ Python ซึ่งมักจะรวมกับ Java (อย่างน้อยฉันก็มักจะเจอมัน)
- Javascript และเฟรมเวิร์กบางส่วน เช่น Angular หรือ React เมื่อรู้สิ่งนี้แล้ว คุณก็สามารถเป็นนักพัฒนา Fullstack ที่มีคุณสมบัติครบถ้วนได้ ผู้เชี่ยวชาญดังกล่าวค่อนข้างหายากและเป็นที่ต้องการ ดังนั้นพวกเขาสามารถคาดหวังเงินเดือนจำนวนมาก (ลำดับความสำคัญที่สูงกว่านักพัฒนา Java ทั่วไป)
- เรียนรู้ภาษาที่เติบโตมาจาก Java ตัวอย่างเช่น สกาลา, คอตลิน ภาษาเหล่านี้กำลังได้รับความนิยมอย่างมากและเริ่มที่จะเข้ามาแทนที่ Java ออกจากตลาดเล็กน้อย อาจจะกระโดดขึ้นเรือของพวกเขาเหรอ? หลักการหลายประการมาจาก Java อันเป็นที่รักของเรา แต่มีนวัตกรรมและการแก้ไขข้อบกพร่องของ Java มากมาย
GO TO FULL VERSION