สวัสดี! ที่นี่เราพูดคุยกันมากมายเกี่ยวกับวิธีการได้งานแรก สิ่งที่คุณต้องศึกษาเพื่อสิ่งนี้ และวิธีประพฤติตนอย่างถูกต้อง ทั้งหมดนี้เป็นสิ่งที่ดีและดี แต่จะทำอย่างไรหลังจากที่คุณได้งานแรก? คุณสามารถผ่อนคลายและไปตามกระแสได้หรือไม่? ไม่ว่ามันจะเป็นอย่างไร
การเป็นโปรแกรมเมอร์หมายความว่าคุณจะต้องเรียนต่อ มีอะไรให้เรียนรู้มากมาย เรียนหนัก. ดังนั้นวันนี้ฉันอยากจะพูดเล็กน้อยเกี่ยวกับทิศทางการพัฒนาเพิ่มเติมหลังจากข้อเสนอแรกที่โลภ ไป.
ตัวอย่างเช่น ฉันถูกเสนอให้ทำการศึกษาเชิงลึกเกี่ยวกับเทคโนโลยี Camel เนื่องจากมีลูกค้าหลายรายซึ่งเป็นนักพัฒนา Java ที่มีทักษะเฉพาะด้านนี้ ใช่เทคโนโลยีไม่ใช่เรื่องใหม่ทั้งหมด แต่เป็นที่ต้องการอย่างมากและการเป็นผู้เชี่ยวชาญที่แข็งแกร่งในเรื่องนี้คุณจะไม่หลงทางในตลาด: พวกเขาจะฉีกคุณด้วยมือและเท้าของคุณ น่าเสียดายที่ตอนนั้นฉันยุ่งอยู่กับการพัฒนาภาษาอังกฤษและปรับตัวเข้ากับโครงการใหม่ ดังนั้นฉันจึงปฏิเสธ เทคโนโลยีสำหรับการเรียนรู้ "น้ำลึก" อาจแตกต่างกัน: ตั้งแต่ Spring โดยทั่วไปไปจนถึงเฟรมเวิร์กเฉพาะ (Spring Security, Spring Cloud…..) หรืออีกครั้ง เทคโนโลยี AWS เป็นต้น
ความจริงที่ว่าคุณได้งานแรกไม่ใช่ความสำเร็จขั้นสุดท้าย แต่เป็นเพียงจุดเริ่มต้นของการเดินทางเท่านั้น และตอนนี้ก็ถึงเวลาแล้วที่แหล่งความรู้ของคุณควรเติบโตเหมือนเห็ดหลังฝนตก ดังนั้นจึงเป็นเรื่องสำคัญมากที่จะต้องกำหนดลำดับความสำคัญและเป้าหมายสำหรับตัวคุณเอง ท้ายที่สุดแล้วแม้แต่เรือที่เร็วที่สุดซึ่งมีกัปตันที่มีประสบการณ์มากที่สุดก็ยังล่องลอยไปตามคลื่นโดยไม่มีจุดประสงค์ในการเดินทาง ดังนั้น ให้เลือกทิศทาง กำหนดเป้าหมายและกำหนดเวลาที่เฉพาะเจาะจง และเริ่มเคลื่อนไหว บางทีอาจเป็นก้าวเล็กๆแต่มั่นคง หวังว่าวันนี้จะฝากอะไรให้ใครคิดบ้าง) เอาเป็นว่าสำหรับผมแล้วมาเรียน Java กันดีกว่า ^^
1. เจาะลึกความรู้ในหัวข้อพื้นฐาน
เพื่อให้ได้งานแรก คุณอาจศึกษาหัวข้อพื้นฐานสำหรับนักพัฒนา Java คุณคิดว่านี่จะเพียงพอหรือไม่? ไม่ไม่และไม่ใช่อีกครั้งหนึ่ง สิ่งที่แยกนักพัฒนาที่มีประสบการณ์ออกจากมือใหม่คือความรู้เชิงลึกของพวกเขา และปรากฎว่าความรู้ยังคงเหมือนเดิม แต่นักพัฒนาอาวุโสจะสามารถบอกคุณถึงความแตกต่างเกี่ยวกับสิ่งที่คุณไม่รู้ด้วยซ้ำ ในด้านหนึ่ง คุณสามารถพูดได้ว่าทุกอย่างขึ้นอยู่กับประสบการณ์ เช่นเดียวกับนักพัฒนาที่มีประสบการณ์จึงมีประสบการณ์เนื่องจากเขาได้ "สัมผัส" ทั้งหมดนี้มาหลายครั้งแล้วดังนั้นจึงรู้ทุกอย่างในรายละเอียดดังกล่าว นี่เป็นเรื่องจริง แต่เพียงบางส่วนเท่านั้น นอกเหนือจากการได้รับประสบการณ์อย่างต่อเนื่องในการพัฒนาแล้ว นักพัฒนายังศึกษาทฤษฎีเพิ่มเติมอีกด้วย: จากบทความ หนังสือ วิดีโอ ตัวอย่างเช่น สำหรับการพัฒนานักพัฒนา Java ที่เกี่ยวข้องกับ Spring จำเป็นต้องดูวิดีโอต่างๆ ของ Evgeniy Borisov ตามลิงก์ไปยังวิดีโอที่เขาสร้างอะนาล็อกของคอนเทนเนอร์ Spring หลังจากนั้น ฉันเริ่มเข้าใจจริงๆ ว่า Spring คืออะไรและทำงานอย่างไร ฉันอยากจะทราบว่าคุณต้องเลือกทฤษฎีที่หลังจากศึกษาแล้ว คุณจะเปิดโลกทัศน์ของคุณในหัวข้อนี้ให้กว้างขึ้นจริงๆ หากคุณเริ่มเจาะลึกหัวข้อที่คุณรู้อย่างผิวเผินมากเกินไปในทันที แล้วคุณจะนึกถึงอะไรในหัว? ไม่มีอะไร. นี่จะเป็นการเสียเวลา ดังนั้นเลือกทฤษฎีของคุณอย่างชาญฉลาด![ชีวิตหลังข้อเสนอแรก Java Developer มือใหม่ควรเรียนรู้อะไรบ้าง? - 2](https://cdn.javarush.com/images/article/5afae3cf-227e-4a0f-8682-031ed497555f/512.jpeg)
2. การพัฒนา (หรือการเรียนรู้) ภาษาอังกฤษ
ภาษาอังกฤษจะมีความสำคัญไม่น้อยสำหรับการพัฒนาของนักพัฒนา ในโครงการที่ดี ความรู้ภาษาอังกฤษไม่ได้ถูกพูดถึงด้วยซ้ำ มันเป็นนัยโดยปริยาย คุณอาจได้งานแรกของคุณโดยใช้ภาษาอังกฤษเพียงเล็กน้อยหรือไม่มีเลย มันเจ๋งมากและคุณโชคดีมาก แต่ก็ไม่ได้เปลี่ยนความจริงที่ว่าคุณต้องปรับปรุง (หรือศึกษา) อย่างเร่งด่วน คุณสามารถทำงานเป็นนักพัฒนาซอฟต์แวร์ที่มีระดับภาษาอังกฤษต่ำได้ แต่นั่นหมายความว่าคุณจะได้รับเฉพาะโครงการที่อยู่ในประเทศ CIS เท่านั้น โครงการที่ใหญ่ที่สุด น่าสนใจที่สุด และทำกำไรได้มากที่สุดเป็นภาษาอังกฤษ หากต้องการย้ายไป "เมเจอร์ลีก" คุณต้องรู้ภาษาตั้งแต่ระดับ B1 ขึ้นไป นักพัฒนาไม่จำเป็นต้องรู้ภาษาในระดับผู้เชี่ยวชาญ เช่น ผู้จัดการโครงการหรือนักวิเคราะห์ธุรกิจ ซึ่งทำงานโดยอาศัยการสื่อสาร แต่ขอแนะนำให้ไปถึงระดับภาษา B2 ระดับนี้จะเพียงพอสำหรับคุณ และตอนนี้สำหรับผู้ชายที่รู้ภาษาอยู่แล้ว: อย่าเพิ่งผ่อนคลาย ภาษามีแนวโน้มที่จะค่อยๆ กลายเป็นลืมไปหากไม่ได้ใช้ อย่าปล่อยให้มันขึ้นสนิมและสนับสนุนด้วยภาพยนตร์ภาษาอังกฤษ ละครโทรทัศน์ หนังสือ บทความ แม้ในขณะที่ทำงานให้กับลูกค้าที่พูดภาษาอังกฤษ การฝึกฝนตามปกติจะไม่เพียงพอ และระดับของภาษาก็ค่อยๆลดลง ให้เขาอยู่บนเท้าของเขา![ชีวิตหลังข้อเสนอแรก Java Developer มือใหม่ควรเรียนรู้อะไรบ้าง? - 3](https://cdn.javarush.com/images/article/8808d9f9-4b2e-4e76-aee9-72c7a5ae70a3/512.jpeg)
3. การได้รับใบรับรอง (Java, AWS)
ปัจจุบันหลายหลักสูตรออกใบรับรองการสำเร็จหลักสูตร แต่ขอพูดตรงๆ ไม่มีใครต้องการพวกเขา และไม่มีใครมองพวกเขาด้วย เช่นเดียวกับในประกาศนียบัตร อย่างไรก็ตาม มีการรับรองที่สำคัญและสามารถทำให้คุณแตกต่างจากที่อื่นได้ ฉันกำลังพูดถึงการรับรอง Java จาก Oracle และAWS (บริการคลาวด์) ตัวอย่างเช่น การรับรอง Java จัดทำโดยบริษัทที่ได้รับอนุญาตจาก Oracle และจัดเตรียมเงื่อนไขการทดสอบที่เป็นไปตามข้อกำหนดของ Oracle ที่จริงแล้วนั่นคือสาเหตุที่ใบรับรองเหล่านี้ถือเป็นระดับสากล คุณสามารถอ่านเพิ่มเติมเกี่ยวกับใบรับรอง Java จาก Oracle บน JavaRush: เกี่ยวกับประเภทของการรับรองการเตรียมตัวสำหรับการรับรองหนังสือที่ดีที่สุดสำหรับการเตรียมตัวสำหรับการรับรอง การรับรอง AWS มีหลักการเดียวกัน แต่มุ่งเป้าไปที่การเรียนรู้เทคโนโลยี AWS แน่นอนว่าไม่เพียงแต่เปลือกเท่านั้นที่มีความสำคัญที่นี่ แต่ยังรวมถึงระดับความรู้ที่คุณได้รับขณะเตรียมตัวสำหรับการทดสอบด้วย หากคุณมีใบรับรอง พวกเขาไม่น่าจะทำให้คุณมีคำถามเกี่ยวกับเทคโนโลยีนี้![ชีวิตหลังข้อเสนอแรก Java Developer มือใหม่ควรเรียนรู้อะไรบ้าง? - 4](https://cdn.javarush.com/images/article/04b40fad-1df9-4c00-8dea-7bf5cd1776aa/512.jpeg)
4. การศึกษาเทคโนโลยีที่เป็นที่ต้องการ
เทคโนโลยีสารสนเทศก้าวหน้าอย่างต่อเนื่อง และไม่สามารถทำอะไรได้ ถ้าเข้าไอทีแล้วก็ต้องปรับตัว สิ่งที่คุณสอนเมื่อปีที่แล้วอาจไม่เกี่ยวข้องในวันพรุ่งนี้ มันค่อนข้างปกติ ทักษะหลักของนักพัฒนาคือความสามารถในการดูดซับและดูดซึมวัสดุใหม่ได้อย่างรวดเร็วและลืมสิ่งที่ไม่จำเป็นไป ดังนั้น หากคุณต้องการที่จะอยู่ในหัวข้อนี้ คุณจะต้องติดตามสถานการณ์ตลาดอย่างต่อเนื่อง ตัวอย่างเช่น เทคโนโลยีอย่างKubernetesและDocker เป็นที่ ต้องการ ในปัจจุบัน คุณสามารถอ่านเพิ่มเติมเกี่ยวกับความแตกต่างระหว่างพวกเขาได้ในบทความนี้ นอกจากนี้ เทคโนโลยี AWS ยังได้รับความนิยมอย่างมากในปัจจุบัน และการใช้ภาษา Kotlin ก็เติบโตอย่างรวดเร็ว (มันค่อยๆ เริ่มที่จะครองตำแหน่งในตลาดจาก Java) คุณสามารถอ่านเพิ่มเติมเกี่ยวกับเทรนด์ปี 2021 ได้ในบทความนี้5. การศึกษาเชิงลึกเกี่ยวกับเทคโนโลยีเฉพาะ
ผู้เชี่ยวชาญที่มีประสบการณ์บางคนกลายเป็นผู้เชี่ยวชาญในเทคโนโลยีเดียว ปัจจุบันมีข้อมูลมากมายแม้จะเป็นไปในทิศทางของการพัฒนา Java ดังนั้นจึงเป็นไปไม่ได้ที่จะเป็นกูรูในทุกสิ่ง ทำไมคุณไม่เลือกทิศทางที่เป็นที่ต้องการเพียงทิศทางเดียว (เทคโนโลยี กรอบงาน) ซึ่งคุณจะกลายเป็นผู้เชี่ยวชาญที่รู้ทุกมุมมืด ในกรณีนี้ คุณสามารถเป็นผู้เชี่ยวชาญที่มีค่ามากสำหรับบริษัทของคุณได้ โดยจะพาผู้คนมาพบคุณเพื่อตรวจสอบระดับของพวกเขาในเทคโนโลยีนี้ (สัมภาษณ์) คุณจะถูกขอให้ตรวจสอบโครงการที่ใช้เทคโนโลยี "ของคุณ" และให้คำแนะนำ (ความคิดเห็น) เกี่ยวกับการใช้เทคโนโลยีที่มีประสิทธิภาพและถูกต้องมากขึ้น ตามกฎแล้ว บริษัทต่างๆ ต่างก็สนใจที่จะมี "ผู้เชี่ยวชาญ" เช่นนี้ หากคุณบอกฝ่ายบริหารเกี่ยวกับความปรารถนาที่จะเจาะลึกเทคโนโลยีใดๆ ก็ตาม พวกเขาอาจช่วยคุณเลือกเทคโนโลยีที่เหมาะสม (โดยปกติจะเป็นเทคโนโลยีที่เป็นที่ต้องการในบริษัทในปัจจุบัน) และหาที่ปรึกษาในบริษัท![ชีวิตหลังข้อเสนอแรก Java Developer มือใหม่ควรเรียนรู้อะไรบ้าง? - 5](https://cdn.javarush.com/images/article/5856c117-dc24-4a77-8663-5e539bebcb44/512.jpeg)
6. เรียนรู้ภาษาการเขียนโปรแกรมใหม่
หนึ่งในตัวเลือกสำหรับการพัฒนาเพิ่มเติมคือการเรียนรู้ภาษาการเขียนโปรแกรมที่สอง ที่นี่ฉันเห็นสามตัวเลือก:- ภาษายูทิลิตี้ที่มักพบในโปรเจ็กต์ Java ตัวอย่างเช่น Groovy ซึ่งเขียนสคริปต์เสริมต่างๆ หรือ Python ซึ่งมักจะรวมกับ Java (อย่างน้อยฉันก็มักจะเจอมัน)
- Javascript และเฟรมเวิร์กบางส่วน เช่น Angular หรือ React เมื่อรู้สิ่งนี้แล้ว คุณก็สามารถเป็นนักพัฒนา Fullstack ที่มีคุณสมบัติครบถ้วนได้ ผู้เชี่ยวชาญดังกล่าวค่อนข้างหายากและเป็นที่ต้องการ ดังนั้นพวกเขาสามารถคาดหวังเงินเดือนจำนวนมาก (ลำดับความสำคัญที่สูงกว่านักพัฒนา Java ทั่วไป)
- เรียนรู้ภาษาที่เติบโตมาจาก Java ตัวอย่างเช่น สกาลา, คอตลิน ภาษาเหล่านี้กำลังได้รับความนิยมอย่างมากและเริ่มที่จะเข้ามาแทนที่ Java ออกจากตลาดเล็กน้อย อาจจะกระโดดขึ้นเรือของพวกเขาเหรอ? หลักการหลายประการมาจาก Java อันเป็นที่รักของเรา แต่มีนวัตกรรมและการแก้ไขข้อบกพร่องของ Java มากมาย
![ชีวิตหลังข้อเสนอแรก Java Developer มือใหม่ควรเรียนรู้อะไรบ้าง? - 6](https://cdn.javarush.com/images/article/e48511e0-6301-4291-94a4-6d389078c843/512.jpeg)
7. การอัพเกรดทักษะด้านอารมณ์
Soft Skills มักจะหมายถึงทักษะในการสื่อสาร นั่นคือวิธีที่คุณรู้วิธีสื่อสารกับผู้อื่น ถ่ายทอดและส่งเสริมความคิดของคุณ หากคุณต้องการเติบโตในทิศทางการบริหารจัดการ เช่น คุณต้องการเป็นหัวหน้าทีมหรือสถาปนิก คุณต้องพัฒนาทักษะการมีปฏิสัมพันธ์กับผู้อื่น วรรณกรรมจะช่วยในเรื่องนี้ ก่อนอื่น ผมขอแนะนำหนังสือ “Deadline” นวนิยายเกี่ยวกับการบริหารโครงการ” โดย Tom DeMarco วิดีโอบน YouTube การอ่านบทความ และหลักสูตร/การฝึกอบรมต่างๆ ก็มีประโยชน์เช่นกัน แต่สำหรับฉัน สิ่งที่สำคัญที่สุดที่ต้องทำคือพยายามสื่อสารกับผู้คนให้มากขึ้น และยิ่งดีเท่าไร วิธีนี้จะทำให้คุณเลิกกลัวการติดต่อกับคนที่ไม่คุ้นเคย เริ่มค้นหาหัวข้อทั่วไปด้วยตัวเอง และหลีกเลี่ยงการหยุดอย่างเชื่องช้า ถ้าคุณเป็นคนเก็บตัวและการสื่อสารกับผู้คนโดยธรรมชาติแล้วทำให้คุณเครียดมาก คุณควรคิดว่า: คุณต้องการสิ่งนี้หรือไม่? บางทีเวลานี้อาจจะดีกว่าใช้เวลาในการเป็นผู้เชี่ยวชาญด้านเทคโนโลยีบางอย่าง?![ชีวิตหลังข้อเสนอแรก Java Developer มือใหม่ควรเรียนรู้อะไรบ้าง? - 7](https://cdn.javarush.com/images/article/c8bca061-35e6-4b13-adae-d369007bb105/512.jpeg)
GO TO FULL VERSION