ความสำคัญของโครงการงานอดิเรก [ปิด]


103

ฉันอยากรู้ว่าการเขียนโปรแกรมในเวลาว่างมีความสำคัญแค่ไหน? จำเป็นหรือเปล่าที่จะต้องทำงาน 9-5 ของคุณในฐานะโปรแกรมเมอร์แล้วกลับถึงบ้านและทำงานอดิเรกของคุณเพื่อที่จะเป็นโปรแกรมเมอร์ที่ดีขึ้น?

สิ่งนี้กล่าวว่าฉันรู้ว่าคุณทำได้ดีกว่าในการเขียนโปรแกรมโดยดีการเขียนโปรแกรม

นายจ้างที่คาดหวังจะคำนึงถึงการเขียนโปรแกรมงานอดิเรกในการสัมภาษณ์หรือพวกเขาถามคำถามนี้ด้วยความอยากรู้อยากเห็นไหม?

ฉันรู้สึกผิดที่ไม่ได้มีงานอดิเรก แต่ทุกอย่างที่ฉันคิดได้ทำไปแล้ว ดังนั้นฉันจึงมีความคิดสองอย่างเกี่ยวกับสิ่งนี้เริ่มสิ่งที่ทำไปแล้วหรือปล่อยไว้จนกว่าฉันจะได้รับสิ่งที่เป็นต้นฉบับ?


6
ในส่วน "ยังไม่ได้เริ่มบางสิ่งที่ทำไปแล้ว" - หากเป็นโครงการ FOSS มีความเป็นไปได้ที่จะเข้าร่วมทีมและทำงานร่วมกันเสมอ
TC1

41
“ คุณไม่หยุดเล่นเพราะคุณแก่แล้ว คุณแก่ขึ้นเพราะคุณหยุดเล่น” - เบ็นแฟรงคลิน

1
ทำไมคุณถึงไม่มีงานอดิเรก? (ฉันถามอย่างจริงจัง)
Alex Feinman

4
ฉันเชื่อว่าการมีโครงการงานอดิเรกโดยธรรมชาติจะทำให้คุณเป็นโปรแกรมเมอร์ที่ดีขึ้น หากคุณไม่มีคุณคิดว่าการเขียนโปรแกรมเป็นงานทางโลกมากกว่าสิ่งที่น่าสนใจท้าทายและสนุก
Maxpm

1
นายจ้างถามเพราะพวกเขาต้องการรู้เกี่ยวกับสิ่งที่คุณหลงใหล บางสิ่งบางอย่างเข้ากันได้ดีกับสภาพแวดล้อมการทำงานที่เฉพาะเจาะจงบางคนทำไม่ได้ ฉันสงสัยว่า บริษัท ส่วนใหญ่จะทำผิดพลาดคุณไม่มีโครงการงานอดิเรก แต่ถ้าคุณมีความกระตือรือร้นในเวลาว่างของคุณเกี่ยวกับสิ่งที่พวกเขายังหลงใหลเกี่ยวกับมันอาจเป็นตัวบ่งชี้ของแบบที่ดี
SoylentGray

คำตอบ:


145

ฉันรู้สึกผิดที่ไม่มีโครงการงานอดิเรก

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

แต่ทุกอย่างที่ฉันคิดได้ทำไปแล้ว

Bah! ใครสนใจว่ามันเสร็จแล้ว? ทำมันอีกครั้ง! ทำได้ดีกว่า! หรือยอมรับว่าคุณอาจไม่สามารถทำได้ดีขึ้นและทำมันต่อไป Microsoft จะอยู่ที่ไหนถ้าพวกเขาพูดว่า "ดีมีคนสร้างฐานข้อมูล / สเปรดชีต / ตัวประมวลผลคำ / ระบบปฏิบัติการ / IDE / ผู้จัดการโครงการ / ผู้จัดการเงิน / C-based สืบทอดมรดกแบบไดนามิกภาษาเชิงวัตถุ / เว็บเบราว์เซอร์ / เว็บเซิร์ฟเวอร์ / เครื่องเล่นเพลง / แพลตฟอร์มมือถือ / เครื่องมือค้นหาดังนั้นเราจะมองหาสิ่งอื่นที่ต้องทำ ... "?

ถ้าคุณเขียนเว็บเซิร์ฟเวอร์อย่างจริงจังมันอาจจะไม่ทำให้ Apache ทำงานได้ แต่คุณจะได้เรียนรู้บทเรียนที่มีค่าในกระบวนการ คุณไม่น่าที่จะขาย Angry Birds แต่การเขียนวิดีโอเกมง่ายๆจะสอนคุณมากเกินไป


78
โครงการสามารถเป็นเหมือน guppies - คุณเริ่มต้นคู่และก่อนที่คุณจะรู้ว่าคุณมี 35. guppies เหล่านั้นอาจกลายเป็นสัตว์เลี้ยงขนาด gerbil และหนึ่งหรือสองของพวกเขาอาจกลายเป็นแมวหรือสุนัขขนาด . แต่เริ่มต้นด้วย guppies และอย่าลังเลที่จะล้างสิ่งที่ไม่ได้ผล
Caleb

5
+1 ใช่! เพียงเพราะเคยทำมาก่อนไม่ได้หมายความว่าคุณไม่ควรทำ เพียงทำในสิ่งที่คุณต้องการคุณจะได้เรียนรู้อะไรมากมายจากการทำบางสิ่งด้วยตัวคุณเอง
Spoike

14
หนึ่งในวิธีที่ดีที่สุดในการเรียนรู้ดนตรีแจ๊สอิมโพรฟคือการคัดลอกโซโล่ของนักดนตรีที่ยิ่งใหญ่ การเขียนโปรแกรมเป็นวิธีเดียวกัน - สร้างสิ่งที่มีอยู่แล้วและคุณจะได้เรียนรู้วิธีการสร้างสิ่งใหม่
derekerdmann

6
"หากสิ่งหนึ่งสิ่งใดที่ควรค่าแก่การทำ (GK Chesterton) สิ่งที่คุณเรียนรู้ในการสร้างโปรแกรมบล็อกที่ไม่ดีหรือไคลเอนต์อีเมลที่ไม่ดีจะมีค่ามากโดยเฉพาะอย่างยิ่งถ้าคุณได้รับเงินเพื่อทำสิ่งที่ดี
Eric Wilson

16
+1 "อ๊ะใครจะสนใจถ้ามันถูกทำไปแล้วทำมันอีกแล้วทำได้ดีกว่า!" - อาจเป็นเรื่องที่ไม่ดีในการทำธุรกิจเพื่อคิดค้นล้อใหม่ แต่มันสนุกมากที่ได้ทำที่บ้าน ส่วนที่เจ๋งคือมันไม่จำเป็นต้องดีกว่า
SoylentGray

59

ฉันคิดว่าโครงการงานอดิเรกมีความสำคัญ

ฉันใช้โครงการงานอดิเรกเพื่อทดสอบทฤษฎีฝึกการออกแบบกรอบงานใหม่ที่ฉันไม่ได้ทำใน 9-5 ของฉัน เช่นการเขียนโปรแกรมเชิงฟังก์ชันอัลกอริทึมรูปแบบการออกแบบกรอบงานใหม่ภาษาใหม่เป็นต้น

นี่อาจหมายถึงความแตกต่างในวิธีที่รวดเร็วและมีประสิทธิภาพฉันสามารถจัดการโครงการใหม่ในที่ทำงานหรือแม้กระทั่งความแตกต่างในการรับโครงการใหม่จากลูกค้าหรือขาดหายไปเพราะฉันไม่รู้โดเมนปัญหาเพียงพอ

การทำเพียง 9-5 ทุกวันของคุณจะทำให้คุณเป็นนักพัฒนาหากคุณไม่ได้แนะนำสิ่งใหม่ ๆ หรือความคิดใหม่ ๆ สำหรับฉันที่ทำโปรเจ็กต์งานอดิเรกเป็นวิธีที่จะทำให้ฉันเป็นนักพัฒนาที่มีประสิทธิภาพมากขึ้นและฉลาดขึ้น

ผู้สัมภาษณ์ที่สนใจจะพิจารณาโครงการงานอดิเรก

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


4
+1 สำหรับ "การทำเพียง 9-5 ทุกวันเท่านั้นที่ทำให้คุณเป็นนักพัฒนา"
Bobby Tables

15
@ บ๊อบบี้: "สามารถ" เป็นคำผ่าตัดที่นี่ เมื่อมันเกิดขึ้น 9-5 "grind" ของฉันไม่อนุญาตให้ฉันหยุดนิ่ง ... ฉันเดาว่าฉันโชคดี :-))
Marjan Venema

1
+1 งานอดิเรก IMO เป็นวิธีเดียวที่คุณสามารถเรียนรู้กรอบงานอื่น ๆ ได้นอกเสียจากว่าคุณจะไม่ว่าง 9-5 ฉันมักจะพบว่างานอดิเรกทำหน้าที่ช่วยในการสัมภาษณ์เช่นกัน แต่ถ้าคุณมีสิ่งที่จะแสดงไม่ใช่แค่ใช่ฉันเล่นกับมัน
DBlackborough

+1 สำหรับการสัมภาษณ์การแก้ไขด้วยการเขียนแอพ android โดยตรงทำให้ฉันได้รับตำแหน่งปัจจุบันของฉันแม้ว่าฉันจะไม่เขียนโปรแกรมมือถือในตำแหน่งนี้
Biff MaGriff

@Marjan Venema: อย่างแน่นอน ฉันมีบางอย่างที่ทำ แต่อาจเป็น "คุณได้สิ่งที่คุณใส่" เช่นกัน ซึ่งในสองงานก่อนหน้านี้ของฉันคือความล้มเหลวในส่วนของฉันที่จะใช้ประโยชน์จากมันให้ได้มากที่สุด
Bobby Tables

41

ปัญหาของงานปัจจุบันของคุณคือคุณอาจต้องใช้ทักษะที่ จำกัด ในการทำงานของคุณ โลกของการเขียนโปรแกรมนั้นกว้างใหญ่จนง่ายที่จะติดอยู่ในปีที่แล้วปีเล่า โดยการเขียนโปรแกรมงานอดิเรกคุณสามารถแยกสาขาและพร้อมสำหรับเทคโนโลยีอื่น ๆก่อนที่โอกาสจะเกิดขึ้นทั้งในตำแหน่งปัจจุบันของคุณหรือที่อื่น ๆ

แต่สิ่งสำคัญคือต้องตระหนักว่าโปรแกรมเมอร์มือสมัครเล่นไม่เพียง แต่เขียนโปรแกรม

  • พวกเขาอ่านบล็อก
  • พวกเขาติดตั้งเครื่องมือ
  • พวกเขาอ่านซอร์สโค้ด
  • พวกเขาดีบักโปรแกรมโอเพนซอร์ซ
  • พวกเขาส่งแพทช์
  • พวกเขาเข้าร่วมในเว็บไซต์การเขียนโปรแกรม StackExchange

แต่บางครั้งพวกเขาก็ได้รับแรงบันดาลใจในการเขียนโปรแกรมเพื่อตอบสนองความต้องการเฉพาะของตนเอง ความสุขของโปรแกรมเมอร์ผิดเพราะมันมีคุณสมบัติตรงตามที่ต้องการ แล้วพวกเขาก็เบื่อมันแล้วก็โยนมันทิ้ง นั่นเป็นงานอดิเรกสุดหรู!


ฉันยอมรับว่ามันไม่ได้เป็นเพียงเกี่ยวกับการเขียนโปรแกรม ฉันและฉันมั่นใจว่าโปรแกรมเมอร์ส่วนใหญ่ทำรายการเกือบทั้งหมดในรายการของคุณเป็นประจำทุกวัน
Pieter van Niekerk

7
+1 "การเขียนโปรแกรม" จำนวนมากประกอบด้วยกิจกรรมอื่น ๆ นอกเหนือจากการใส่รหัสใหม่ลงในเครื่องมือแก้ไข
StevenV

26

IMHO ไม่จำเป็นต้องเป็นโครงการงานอดิเรกต่อไปซึ่งจะทำให้คุณดีขึ้น (แม้ว่าพวกเขาจะไม่เจ็บแน่นอน) แต่ยังคงเปิดกว้างและใช้เวลาในการเรียนรู้สิ่งใหม่โดยทั่วไป ดังที่ @Rick กล่าวว่ามันสามารถใช้รูปแบบที่แตกต่างหลากหลายนอกเหนือจากการเขียนโปรแกรมจริง คุณสามารถอ่านหนังสือ แต่ถ้าคุณมีแล็ปท็อปหรือแม้แต่รหัส - ในขณะเดินทางไป / กลับจากที่ทำงาน

ยังทราบว่าหนึ่งอย่างต้องการที่จะรักษาความสมดุล

  • หากคุณไม่ได้ใช้เวลาในการเรียนรู้คุณจะซบเซาและบางครั้งอาจเบื่องานอาชีพของคุณและไม่สามารถรับความท้าทายใหม่ ๆ ได้
  • หากคุณใช้เวลาว่างในการเรียนรู้มากเกินไปคุณจะไม่มีเวลาสำหรับสิ่งที่อยากรู้อยากเห็น แต่สำคัญที่เรียกว่าชีวิตดังนั้นในระยะยาวคุณอาจเหนื่อยหน่ายและ / หรือมีปัญหาสุขภาพ

อีกสิ่งหนึ่ง: เป็นเรื่องง่าย (แนะนำ) ทำงานในโครงการงานอดิเรกในขณะที่คนหนุ่มสาวและคนโสด ในระยะต่อมาคุณอาจมีครอบครัวและนั่นจะกำจัดเวลาว่างส่วนใหญ่ของคุณเป็นเวลาหลายปี (อย่างน้อยถ้าคุณต้องการทำมันให้ดี - และอะไรคือจุดอื่น) ดังนั้นคุณจะถูกบังคับให้จัดการเวลาของคุณอย่างมีประสิทธิภาพยิ่งขึ้นเพื่อที่จะได้ประหยัดเวลาอันมีค่าสำหรับการเรียนรู้


5
+1 สำหรับการมีชีวิต ฉันไม่ได้ทำงานที่ บริษัท ทั่วไป แต่ฉันคิดว่าการเรียนรู้และเป็นส่วนหนึ่งของงานของฉัน การเรียนรู้ของฉันมากมายเกิดขึ้นในที่ทำงาน จริงอยู่ที่ฉันไม่ได้ทำงานในโครงการงานอดิเรกเต็มรูปแบบในที่ทำงาน แต่ฉันหาโอกาสใช้สิ่งใหม่ ๆ "เพียงเพราะ" ในโครงการงานต่างๆ ดังนั้นสำหรับฉันการมีชีวิตสำคัญกว่าการมีงานอดิเรก
ฟิล

2
+1 ตลอดชีวิต! มันเป็นสิ่งสำคัญที่จะมีความสมดุลของชีวิตการทำงาน คุณจะเหนื่อยหน่ายอย่างรวดเร็วถ้าคุณทำไม่ได้!
Steven Striga

1
+1 ฉันมีปัญหากับเรื่องนี้ในตอนนี้ ฉันมีลูกสาวสองคน (6,11) ที่ต้องการความสนใจของฉันงานวันของฉัน (50ish ชั่วโมง) และจากนั้นอีก 8 - 16 ชั่วโมงในการทำงานตามสัญญา สำหรับชั่วขณะจัดการสิ่งนี้ด้วยการทำ 6-5ish ใช้เวลากับครอบครัวจนกว่าจะเข้านอนประมาณ 9ish จากนั้นทำสัญญางานจนกระทั่งเมื่อใดก็ตาม มันใช้งานได้ แต่ฉันถูกไฟไหม้จริงๆ แค่ยังไม่ได้ตัดสินใจว่าจะทำยังไง
Ominus

10

ทำโครงการด้าน! อย่าคิดว่ามันจะนำสิ่งใหม่ ๆ มาสู่เว็บคิดว่าเป็นการฝึกฝนทักษะของคุณ Sandbox สำหรับการเรียนรู้ / เทคโนโลยีและวิธีการเรียนรู้

ในฐานะนายจ้างฉันมักจะถามเพื่อนร่วมงานที่มีศักยภาพว่าพวกเขากำลังทำโครงการด้านที่น่าสนใจหรือไม่ และแม้ว่าในกรณีที่ไม่ใช่ความคิดที่น่าตื่นเต้น แต่ผู้เขียนของพวกเขาแสดงความตื่นเต้นเกี่ยวกับมัน - มันเป็นมืออาชีพที่ยิ่งใหญ่เสมอ


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

7

โปรแกรมเมอร์ที่ฉันพบว่ามีเวลาที่ยากลำบากในการติดตามข่าวสารเกี่ยวกับเทคโนโลยีใหม่ ๆ คือพวกที่ปฏิบัติต่อมันเป็นงาน คู่ของพวกเขา - คนที่ไม่ให้ทันกับสิ่งใหม่ ๆ ที่จะเป็นคนที่ทำให้สิ่งที่บ้าน


+1 สำหรับคำตอบที่กระชับ ระวังอย่าใช้เหตุผล
คาเลบ

6
ทำไมคุณไม่สามารถติดตามสิ่งใหม่ที่ทำงานเพื่อ? ดูเหมือนว่าปัญหาที่นี่เป็นนายจ้างที่ไม่ดีและใจแคบมากกว่าที่จะขาดโครงการงานอดิเรก

6

คุณบอกว่าทุกสิ่งที่คุณคิดได้ทำไปแล้ว แต่เครื่องมือทุกอย่างที่คุณใช้ทำงานตามที่คุณต้องการหรือไม่? ฉันมักพบว่าเครื่องมือทำเกือบ แต่ไม่ทุกสิ่งที่ฉันต้องการและโครงการงานอดิเรกของฉันออกมาจากการพยายามเติมเต็มช่องว่าง ฉันไม่ประสบความสำเร็จเสมอไป แต่ฉันสนุกกับการลองและในฐานะผู้ใช้ปลายทางฉันไม่มีปัญหาเกี่ยวกับแรงจูงใจหรือรายละเอียด


4

หากคุณมีความสนใจและพลังงานสำหรับโครงการเหล่านั้นจริงๆ แต่ฉันจะไม่ไปไกลเท่าที่บอกว่ามันเป็นสิ่งจำเป็นสำหรับโปรแกรมเมอร์ที่จริงจัง หากคุณทำงานเต็มเวลากับการเขียนโปรแกรมการทำในเวลาว่างของคุณและไม่จำเป็นต้องเพิ่มความสนใจของคุณมันอาจมีผลตรงกันข้าม โดยส่วนตัวฉันเคยทำโครงการอดิเรก แต่ฉันหยุด ฉันได้เขียนโปรแกรม 5 วันต่อสัปดาห์และสำหรับฉันมันดูสุขภาพดีกว่าที่จะทำสิ่งที่แตกต่างอย่างสิ้นเชิงในเวลาว่างของฉัน

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

จากมุมมองของนายจ้าง (ฉันเป็นหนึ่งในนั้น) โครงการงานอดิเรกจะเป็นข้อดีถ้าคุณไม่มีประสบการณ์การทำงานจริง โครงการงานอดิเรกและโรงเรียนทั้งหมดจะมีความสำคัญอย่างยิ่งที่จะนำมาเป็นข้อมูลอ้างอิงในระหว่างการสัมภาษณ์

แต่ถ้าคุณมีประสบการณ์พวกเขาจะมีความเกี่ยวข้องน้อยกว่า: ในขณะที่พวกเขาอาจบ่งบอกถึงความหลงใหลในการค้าของคุณในขณะเดียวกันก็อาจบ่งบอกว่าคุณเป็นคนโง่ จากประสบการณ์ส่วนตัวของฉันฉันไม่พบการเชื่อมต่อใด ๆ ระหว่างโครงการงานอดิเรกและผู้สมัครที่ดี / ไม่ดีฉันไม่คิดว่าพวกเขาจะมีความเกี่ยวข้องเป็นพิเศษเว้นแต่คุณจะออกจากโรงเรียนใหม่เพื่อสมัครงานแรกของคุณ


1
+1 สำหรับการเป็นหนึ่งในคำตอบเดียวที่บอกว่าโครงการงานอดิเรกไม่จำเป็นเสมอไปเป็นสิ่งที่ดี (ต้องใช้เวลาและพลังงาน) โดยส่วนตัวฉันมีหลายสิ่งหลายอย่างที่ต้องทำในช่วงเวลาที่ฉันไม่ได้ทำงานและฉันไม่ค่อยมีเวลาสำหรับการเขียนโปรแกรม (การเรียกดู SO นั้นไม่ได้เรียกร้องการเขียนโปรแกรมจริงมากนัก) สิ่งเหล่านั้นรวมถึงการทำงานบ้านการมีชีวิตทางสังคมการพักผ่อนเพื่อให้ฉันสามารถทำงานได้อย่างมีประสิทธิภาพเมื่อฉันกลับไปทำงานในวันจันทร์ (ฉันนอนมาก; o)) ฯลฯ ไม่พูดว่าไม่ดีพวกนั้นอาจจะดีกว่า ฉันเป็นนายจ้าง แต่ฉันชอบที่จะมีชีวิตที่สมดุลมากขึ้นเป็นการส่วนตัว
n1ckp

3

ฉันเป็นแบบทดสอบและโค้ดขนาดเล็กที่คล้ายกันมากกว่าโครงการที่ขยายขนาดเต็มรูปแบบ (แม้ว่าพยายามทำงานกับโครงการ OSS บางโครงการหากฉันมีเวลา) ดังนั้นสำหรับฉันไม่มีข้อแก้ตัวมากที่จะบอกว่าฉันไม่มีความคิดที่ดีสำหรับโครงการ เพียงแค่เขียนตัวแก้ Sudoku แล้วลองนำบางสิ่งเช่น Dancing Links มาทำให้เร็วขึ้น

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

และใช่บาง บริษัท สนใจโครงการของคุณอย่างจริงจัง หากไม่มีอะไรอื่นพวกเขาจะให้โอกาสมากมายแก่คุณในการพูดคุยเกี่ยวกับสิ่งที่คุณรู้ดีในระหว่างการสัมภาษณ์


1
ในเรื่องของแบบทดสอบและสิ่งที่คล้ายกันฉันทำงานเกี่ยวกับปริศนาเช่น Project Euler
Pieter van Niekerk

3

โครงการงานอดิเรกตัวเองจะไม่ให้ความสำคัญในการสัมภาษณ์มากที่สุด มีคนไม่กี่คนที่ใส่ใจคุณทำโค้ดเป็นงานอดิเรก แต่ส่วนใหญ่ทำไม่ได้ อย่างไรก็ตามทักษะที่คุณเลือกจากการเขียนโปรแกรมงานอดิเรกอาจมีความสำคัญในการสัมภาษณ์!

การเขียนโปรแกรมเพิ่มเติมทางด้านนั้นแน่นอนว่าจะเป็นประโยชน์ในการเขียนโปรแกรมจนถึงจุดที่คุณเหนื่อยหน่าย ... อย่างไรก็ตามถึงแม้จะมีปัญหาเหนื่อยหน่ายคุณยังต้องพิจารณาว่านายจ้างมักมองหาทักษะอื่น ๆ นอกเหนือจากการเขียนโปรแกรม หากคุณกำลังเขียนโปรแกรม 24/7 คุณไม่ได้พัฒนาทักษะอื่น ๆ ! ยอดคงเหลือ ... :-)


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

3

สำหรับหนึ่งฉันคิดว่าโครงการงานอดิเรกมีความสำคัญเพราะมิฉะนั้นคุณจะซบเซาและคลายความสนุก

ข้อเสนอแนะของฉันเพื่อค้นหาโครงการงานอดิเรกใหม่:

เรียนรู้ภาษาการเขียนโปรแกรมใหม่เพื่อทำโครงการงานอดิเรกของคุณ เช่นเป้าหมายที่ดีคือการพยายามเรียนรู้ภาษาใหม่หนึ่งภาษาต่อปี

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

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

คุณเคยลองใช้ภาษาโปรแกรมที่ใช้งานได้หรือไม่? คุณเคยลองใช้ภาษาโปรแกรมแบบกระจายหรือไม่? รูปแบบการจับคู่ภาษา?

สำหรับการหาโครงการขนาดเล็กเพื่อทำงานกับProject Eulerนั้นเป็นสิ่งที่แนะนำให้ทำ


ฉันจะใช้ถ้อยคำที่เล็กน้อย - ใช้ภาษาใหม่เพื่อทำโปรเจ็กต์งานอดิเรกของคุณ จากนั้นโครงงานคือแรงจูงใจไม่ใช่การเรียนรู้
phkahler

ข้อเสนอแนะที่ดีทำมัน
Peer Stritzinger

2

ฉันเป็นนักพัฒนาเว็บมือสมัครเล่นที่ไม่มีการศึกษาระดับวิทยาลัย ฉันได้รับเชิญให้สัมภาษณ์ครั้งแรกสำหรับงานเขียนโปรแกรมเมื่อสองสามสัปดาห์ก่อนเพราะฉันทำงานโครงการส่วนตัวของฉันเอง

เมื่อพิจารณาจากหลักฐานเรื่องนี้การทำงานในโครงการ "งานอดิเรก" ส่วนตัวของฉันเป็นสิ่งที่ดีที่สุดที่ฉันได้ทำเพื่อพัฒนาอาชีพของฉันให้ก้าวหน้า ... หลังจากลงทะเบียนเรียนที่วิทยาลัย

ดังนั้นผู้สัมภาษณ์ต้องคำนึงถึงโครงการส่วนตัวของคุณเป็นอย่างอื่นไม่เช่นนั้นพวกเขาจะไม่ใส่ใจแม้แต่การพูดคุยกับฉัน


1
นี่เป็นคำแนะนำที่ดีสำหรับทุกคนที่ไม่มีประสบการณ์การทำงานและกำลังมองหางานแรกของพวกเขาในฐานะโปรแกรมเมอร์

2

คนอื่น ๆ ได้ครอบคลุมมาก แต่ฉันต้องการที่จะมุ่งเน้นในส่วนนี้:

ฉันรู้สึกผิดที่ไม่ได้มีงานอดิเรก แต่ทุกอย่างที่ฉันคิดได้ทำไปแล้ว ดังนั้นฉันจึงมีความคิดสองอย่างเกี่ยวกับสิ่งนี้เริ่มสิ่งที่ทำไปแล้วหรือปล่อยไว้จนกว่าฉันจะได้รับสิ่งที่เป็นต้นฉบับ?

สำหรับฉันดูเหมือนว่านี่พลาดจุดสำคัญของ "โครงการอดิเรก" มันเป็นความจริงอย่างแน่นอนว่าโครงการงานอดิเรกจำนวนมากถูกสร้างขึ้นสำหรับผู้อื่นหรืออย่างน้อยก็มีการบริโภคในใจ - โครงการเหล่านี้ต้องใช้จำนวนที่แน่นอนของการทำงานที่สอดคล้องกันในช่วงเวลาและสามารถ daunting สำหรับเหตุผล หลังจากที่ทุกคนต้องการที่จะทำให้ยังอีกภายใต้การสนับสนุนที่มีคุณภาพต่ำบางสิ่งบางอย่างหรืออื่น ๆ ที่ในที่สุดได้รับการยกเลิกหลังจากไม่กี่เดือน?

แต่ไม่มีเหตุผลว่าโครงการงานอดิเรกของคุณต้องทำอะไรที่มีประโยชน์สำหรับทุกคน ตัวอย่างเช่นฉันเพิ่งเริ่มเรียนรู้Haskellอย่างหมดจดเพราะมันแตกต่างอย่างมากจากภาษาที่จำเป็นที่ฉันคุ้นเคยและมันง่ายมากที่จะตั้งค่า ฉันเพิ่งเริ่มเรียนรู้ภาษาแอสเซมบลี - ไอชิ Redcode ที่ใช้ในเกมการเขียนโปรแกรมCore Warอีกครั้งจากความอยากรู้

ในทางกลับกันนี่ทำให้ฉันมองไปที่การสร้างปลั๊กอิน Notepad ++เพื่อให้ฟีเจอร์เน้นไวยากรณ์ที่ดีขึ้นสำหรับ Redcode ซึ่งทำให้ฉันต้องพิจารณาการเรียนรู้ C ++เล็กน้อย การวาดภาพบนความคุ้นเคยเปรียบเทียบของฉันกับ .NET, ตอนนี้ฉันขบคิดได้รับตัวเองตั้งค่ากับVisual C ++

และสิ่งนี้ก็คือไม่มีสิ่งใด "สำคัญ" อย่างน้อยก็ไม่เป็นโครงการ นรกฉันไม่แน่ใจว่าคุณจะเรียกมันว่าโปรเจ็คต์ต่อ se ได้มากพอ ๆ กับสิ่งที่ฉันทำเพราะมันทำให้ฉันสนใจ ฉันหมายความว่าคุณจะต้องใช้เวลาเล็กน้อยและจัดระเบียบเพื่อให้แน่ใจว่าคุณได้รับบางสิ่งบางอย่างจากมันจริง ๆแต่ไม่มีใครสนใจถ้าฉันหยุดมีเวลาสำหรับ Haskell เมื่อโรงเรียนเริ่ม

และไม่มีใครสนใจถ้าปรากฎว่าการพัฒนาโปรแกรมเสริมสำหรับ Notepad ++ นั้นยากกว่าที่ฉันคาดไว้และฉันก็เลิก - แน่นอนฉันดู Perl ก่อนที่ฉันจะใช้ Redcode และละทิ้งมันอย่างรวดเร็วเพราะฉันมีปัญหาในการรับ สภาพแวดล้อมการตั้งค่าอย่างถูกต้อง สิ่งนี้แสดงให้เห็นถึงการขาดความพยายามหรือไม่? ใช่. แต่ไม่มีใครสนใจเพราะเป็นงานอดิเรกของฉันและนั่นหมายความว่าฉันจะเล่นกับอะไรก็ได้ที่ฉันรู้สึก

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

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

หากนั่นไม่ใช่สิ่งที่คุณลองสิ่งที่ต่ำกว่าที่คุณเคย หรือระดับที่สูงขึ้น มันไม่สำคัญ สิ่งเดียวที่ไม่เรื่องก็คือว่าเมื่อคุณมองไปที่มันคุณคิดว่า "สนุก!"


0

โครงการเหล่านี้เป็นสิ่งที่จำเป็นสำหรับโปรแกรมเมอร์ที่จริงจังโดยเฉพาะถ้าคุณทำงานในฐานะอิสระ

แทนที่จะทำงาน 6 วันต่อสัปดาห์พัก 1 วันคุณสามารถทำงาน 5 วันต่อสัปดาห์ 1 วันสำหรับทดสอบทฤษฎีและคุณสมบัติใหม่และพัก 1 วัน

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


0

ฉันเกี่ยวข้องกับการสัมภาษณ์และการจ้างงานที่ร้านค้าของฉัน 'โครงการงานอดิเรก' เป็นประโยชน์กับเราเสมอ

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

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

คุณจะถูกจดจำในวิธีที่ดี


0

ฉันพบว่าการเขียนโปรแกรมในเวลาว่างมีวัตถุประสงค์สองประการ:

1) มันช่วยให้ฉันประสบความสำเร็จในสิ่งที่ได้รับรางวัลเป็นการส่วนตัวโดยไม่ต้องมีข้อ จำกัด ในโครงการทำงาน นี่เป็นสิ่งสำคัญอย่างยิ่งเมื่อฉันได้รับการจัดการกับปัญหาที่ยากและน่าผิดหวังกับโครงการทำงานของฉัน

2) มันทำให้ฉันมีโอกาสที่จะขยายและเพิ่มพูนทักษะการเขียนโปรแกรมของฉันเพราะฉันมีอิสระที่จะสร้างสิ่งที่ฉันต้องการ

เหมือนกันทั้งหมดฉันคิดว่ามันเป็นสิ่งสำคัญเช่นกันในการสร้างความสมดุลให้กับงานอดิเรกที่ไม่ใช่คอมพิวเตอร์ สำหรับฉันมันรักษาลำห้วยและเส้นทางตามหลังบ้านของฉัน


0

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

สำหรับการเขียนที่ยอดเยี่ยมเกี่ยวกับผลประโยชน์ทั้งหมดของสัตว์เลี้ยงลองดูโพสต์นี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.