Nhà tuyển dụng tìm kiếm điều gì ở ứng viên tự học? [đóng cửa]


23

Tôi là một lập trình viên tự học sắp tham gia vào thị trường việc làm. Điều tôi muốn biết là cách tốt nhất để thể hiện kinh nghiệm của tôi với nhà tuyển dụng là gì?

Nhà tuyển dụng muốn biết gì về kinh nghiệm lập trình của tôi? Các nhà tuyển dụng có muốn xem mã tôi đã viết hay họ có thể muốn xem phần mềm đang hoạt động không? Hay họ chỉ quan tâm phần mềm của tôi đang được sử dụng bao nhiêu / nó đã tạo ra bao nhiêu doanh thu? Tôi có nên viết về phong cách thiết kế và lập trình của mình không?

Nền tảng của tôi: Gần đây tôi đã tốt nghiệp một trường đại học nơi tôi học ngoại ngữ, và đó là trong thời gian này khi tôi phát hiện ra rằng lập trình là điều tôi thực sự muốn làm. Hiện tại tôi là một lập trình viên nhà xe, phát triển phần mềm cho khách hàng để sử dụng thương mại trong khi tiếp tục tự dạy bản thân, nhưng mục đích của tôi là bắt đầu một công việc và nghề nghiệp "phù hợp". Hiện tại tôi đang sống ở Phần Lan, nhưng tôi đang tìm việc làm ở Trung Quốc hoặc Nhật Bản (tôi đã học cả hai ngôn ngữ khi đi du học).


Lưu ý rằng hầu hết lập trình ngày nay được thực hiện theo nhóm (đơn giản là để hoàn thành) và có thể viết mã theo mẫu mà những người khác mong đợi là một kỹ năng quan trọng. Bạn có thể muốn tham gia một hoặc hai khóa học lập trình tại trường đại học cũ của mình nếu có thể chỉ đơn giản là để học các kỹ năng cơ bản.

2
"Học các kỹ năng cơ bản" - điều này không có nghĩa là bạn không biết bất kỳ kỹ năng cơ bản nào, nhưng có rất nhiều thứ để học và không chắc bạn đã tự học tất cả chúng.

4
Có một cái nhìn về những gì mọi CS chính nên biết . Nó nhấn mạnh tầm quan trọng của việc có một danh mục kinh nghiệm git để cho nhân viên thấy, các kỹ năng Linux / UNIX, các mô hình lập trình khác nhau và nhiều hơn nữa. Cũng xem Ma trận Năng lực của Lập trình viên và các khóa học Khoa học Máy tính miễn phí của Coursera .
Anthony

@ AnoPäivinen BTW, đừng đánh giá thấp số lượng người tự học trong biz và đừng nản lòng trước những gì có vẻ như là những khoảng trống lớn mà bạn sẽ có lúc đầu. Tôi đã làm việc với một số người tuyệt vời, những người tự học.
MrFox

Câu trả lời:


8

Tôi muốn nói rằng các nhà tuyển dụng tìm kiếm những điều này trong tất cả các ứng viên lập trình viên (điều này xuất phát từ kinh nghiệm của chính tôi với tư cách là nhà phát triển chính đang sàng lọc các ứng viên):

  • Khả năng linh hoạt và học hỏi các công nghệ mới nhanh chóng (điều này đặc biệt quan trọng đối với các lập trình viên tự học)

  • Khả năng giao tiếp vấn đề

  • Khả năng giải quyết các vấn đề về thuật toán và hậu cần (quan trọng đối với các lập trình viên phân tích)

  • Khả năng tuân thủ các tiêu chuẩn và quy tắc của các busines địa phương, tức là. đừng quá bế tắc theo cách của bạn, hãy chắc chắn tuân theo các quy ước đặt tên của doanh nghiệp bạn làm việc.

  • Trung thực và chăm chỉ.

Trong rất nhiều trường hợp, các công ty lớn hơn sẽ yêu cầu bạn cung cấp một bài tập ứng viên. Các bài tập này có độ khó cao nhưng một ví dụ có thể là mã một mô-đun có thể tái sử dụng, chuyển đổi một số tiền bằng đô la thành một chuỗi văn bản có thể đọc được bằng tiếng Anh sẽ được viết trên séc cho số tiền đó, tức là. "$ 999,34" đến "Chín trăm chín mươi chín đô la và ba mươi bốn xu".

Điều quan trọng cần lưu ý rằng đó không chỉ là mã mà họ sẽ xem xét trong các bài tập này, mà còn là tài liệu đi kèm với nó, tức là. doco giải thích các vấn đề, các giả định và thuật toán được sử dụng. Họ cũng sẽ xem xét các quy ước đặt tên của bạn (chủ yếu là kiểm tra tính nhất quán) và kiểm tra nhận xét mã rõ ràng.


9

Một đầu mối

Nghiêm túc mà nói, tôi chỉ tìm kiếm một vài điều trong một ứng cử viên:

  1. khả năng cơ bản để lập trình
  2. quan tâm đến lập trình
  3. hiểu tương xứng với giáo dục và kinh nghiệm
  4. có khả năng học hỏi
  5. lòng tốt

Ví dụ: tốt nghiệp tự học trung học đã giải quyết 50 vấn đề Euler: thuê dễ dàng. MSCS với GPA 4.0, người không thể giải thích sự khác biệt giữa TreeMap và HashMap: không thuê.


Bạn có thể giải thích những gì bạn có ý nghĩa với lòng tốt? Nó có phải là một tài sản của không bị giật?
Ano Päivinen

1
@ AnoPäivinen: Nó bao gồm một loạt các hành vi liên quan đến đối xử với đồng nghiệp mà tất cả đều xem xét cho người khác. "Jerk" được định nghĩa bởi sự thất bại trong việc xem xét người khác.
kevin cline

Tôi đã định nói rằng tôi nên đến làm việc cho bạn, dựa trên yêu cầu của bạn, nhưng tôi không biết bản đồ cây / băm là gì. Sau ba năm sống và phát triển phần mềm / web, tôi vẫn bị cuốn vào các cuộc phỏng vấn cho những điều mà tôi chưa bao giờ nghe nói tới. Làm cho tôi cảm thấy như tôi đã không học được một điều. Đôi khi tôi thề tất cả các bạn làm cho công cụ này lên. Hoặc là vậy, hoặc tôi thực sự sẽ không học được gì cho đến khi tôi được thuê.
Josh Campbell

@Josh: lấy một bản sao của "Giới thiệu về thuật toán". Bất kỳ phiên bản.
kevin cline

1
@ Giấy phép: Nếu bạn đang nộp đơn xin thực tập, thì tôi nghĩ sẽ hợp lý khi đề cập rằng bạn đã giải quyết được các vấn đề của Euler, trong đó n> 20. Mục tiêu của bạn với một bản lý lịch là nhận được một cuộc gọi. Thông tin cho thấy một số khả năng thực sự sẽ không bị tổn thương.
kevin cline

3

Những người khác đã trả lời câu hỏi trực tiếp của bạn về các ứng viên tự học. Tuy nhiên, có một sự xem xét khác có thể còn quan trọng hơn là tự học hay không. Tôi đang nói về văn hóa của các quốc gia bạn dự định làm việc và sinh sống.

Trước hết, đừng bao giờ viết "việc làm ở Trung Quốc hay Nhật Bản" . Nghe có vẻ như "Phần Lan hoặc Úc" (không vi phạm). Chúng hoàn toàn khác nhau, và bạn phải chọn.

Ngoài ra, việc làm ở một quốc gia khác thường có nghĩa là thuế cao hơn cho một công ty, nhiều hạn chế khác nhau (ví dụ: thuê một người nước ngoài, phải thuê N người bản địa), v.v. Vì vậy, để được tuyển dụng ở Trung Quốc, bạn phải thực sự giỏi trong những gì bạn đang làm .

Trong thực tế, bạn có hai lựa chọn tốt nhất:

  • Tốt nghiệp tại một đất nước của tương lai của bạn. Điều này sẽ cung cấp cho bạn (a) kiến ​​thức về tiêu chuẩn quốc gia; (b) liên hệ kinh doanh; (c) bằng tốt nghiệp chính thức (có thể quan trọng hơn bạn nghĩ). Ngoài ra, tương tự ở khắp mọi nơi, các công ty lớn liên hệ với các trường đại học để tìm ra những sinh viên nổi bật nhất và bạn có cơ hội tốt để trở thành người đó.
  • Áp dụng cho một công ty đa quốc gia có chi nhánh tại Trung Quốc. Bạn có thể nói chuyện với HR và đồng ý làm việc ở vị trí địa phương trong một thời gian nhất định và sau đó chuyển đến cùng một công ty (ít giấy tờ hơn). Có nền tảng ngôn ngữ và văn hóa, nó sẽ dễ dàng hơn cho bạn. Và, tại thời điểm di chuyển, bạn sẽ có kinh nghiệm CNTT thực tế trong công ty.

Cảm ơn những hiểu biết! Nghe có vẻ lạ khi tôi quyết định giữa Trung Quốc (Thượng Hải) và Nhật Bản, họ rất khác nhau nhưng tôi thực sự thích cả hai. Nhưng tôi chưa thể quyết định cái nào tốt hơn, vì vậy tôi đang nhắm đến cả hai và xem điều gì sẽ xảy ra. Tôi tự hỏi nếu điều đó có ý nghĩa!
Ano Päivinen

Bạn có thể thích cả hai. Chỉ cần đảm bảo rằng các ứng dụng của bạn là cụ thể cho thị trường việc làm Trung Quốc và Nhật Bản. Có lẽ, các thư xin việc khác nhau cũng sẽ hữu ích, như trong câu trả lời này .
bytebuster

2

Nhà tuyển dụng muốn biết gì về kinh nghiệm lập trình của tôi?

Chủ yếu, rằng bạn có một số. Đặt mình vào vị trí của họ: nếu bạn đang thuê ai đó, bạn sẽ chọn anh chàng có thể không biết phải làm gì với trình biên dịch, hoặc anh chàng đã ở quanh khối một vài lần, học cách giải quyết vấn đề và có thể nhận được một số công việc hữu ích được thực hiện mà không có nhiều nắm tay?

Các nhà tuyển dụng có muốn xem mã tôi đã viết hay họ có thể muốn xem phần mềm đang hoạt động không?

Vâng. Có một số mã để hiển thị có thể hữu ích. Có một sản phẩm làm việc để hiển thị, và sẵn sàng trả lời các câu hỏi về cách thức hoạt động của nó, tại sao bạn làm theo cách đó, vv cũng có thể hữu ích. Các nhà tuyển dụng khác nhau sẽ đánh giá những thứ này khác nhau, nhưng tốt hơn là không có gì hơn là không có gì.

Hiện tại tôi đang sống ở Phần Lan, nhưng tôi đang tìm việc làm ở Trung Quốc hoặc Nhật Bản (tôi đã học cả hai ngôn ngữ khi đi du học).

Có rất nhiều người ở Trung Quốc và Nhật Bản nói tiếng Trung và tiếng Nhật tương ứng. Có lẽ không nhiều người nói tiếng Anh và tiếng Phần Lan trôi chảy quá. Sử dụng sức mạnh đó để lợi thế của bạn - tìm kiếm các công ty cần những kỹ năng ngôn ngữ đó.


3
"Hãy đặt mình vào vị trí của họ: nếu bạn đang thuê ai đó, bạn sẽ chọn anh chàng có thể không biết phải làm gì với trình biên dịch" - Đối với nhiều công ty, điều đó phụ thuộc hoàn toàn vào giá rẻ của họ.
pdr

2

Tôi muốn nói rằng những kỹ năng quan trọng nhất mà các lập trình viên tự học có thể thiếu mà không biết đó là những kỹ năng phần mềm và kiến ​​trúc phần mềm liên quan.

Hãy chắc chắn rằng bạn biết nhiều hơn là chỉ viết mã, đảm bảo bạn biết thế nào là khả năng duy trì và làm thế nào để đạt được nó; RẮN là gì, tại sao nó được coi là tốt và cần thiết; mẫu thiết kế, vv

Ngoài ra, cố gắng khắc phục bất kỳ phần xấu của quá trình của bạn. Ví dụ: kiểm tra tự động (điều mà mọi người nên làm!), Theo dõi lỗi, kiểm soát sửa đổi nguồn (cũng bắt buộc). Danh sách này không có nghĩa là bao gồm tất cả mọi thứ, nó chỉ là một ví dụ.


2
Đó là những gì tôi thường thấy thiếu trong các sinh viên CS! Có khả năng đọc thuộc lòng O (n) cho các thùng chứa khác nhau nhưng chưa bao giờ sử dụng trình gỡ lỗi.
Martin Beckett

2

Nhà tuyển dụng muốn biết gì về kinh nghiệm lập trình của tôi? Các nhà tuyển dụng có muốn xem mã tôi đã viết hay họ có thể muốn xem phần mềm đang hoạt động không?

Vâng, đây là những lựa chọn tốt nhất. Trình độ chuyên môn không phải là một chỉ số đặc biệt tốt cho khả năng viết mã. Điều tương tự cũng áp dụng cho các nhà tuyển dụng trước đây - rất nhiều người có thể làm việc trong một công việc mà họ không được tuyển dụng. Tôi muốn xem loại mã nào bạn viết và lịch sử theo dõi về khả năng xây dựng công cụ đã được đưa vào sản xuất.

Hay họ chỉ quan tâm phần mềm của tôi đang được sử dụng bao nhiêu / nó đã tạo ra bao nhiêu doanh thu?

Đó là ngoài phạm vi trách nhiệm của bạn, tôi không quan tâm đến những thứ đó trừ khi bạn đảm nhận vai trò quản lý dự án hoặc cao hơn.

Tôi có nên viết về phong cách thiết kế và lập trình của mình không?

Không quá nhiều, nhưng có lẽ các gạch đầu dòng hiển thị các khu vực quan tâm với các mẫu mã của bạn sẽ hữu ích.


OK, tôi sẽ không quan tâm đến việc phần mềm của tôi kết thúc như thế nào dưới bàn tay của khách hàng và đồng ý viết nó tốt.
Ano Päivinen

2

Kỹ năng tự học

Vâng, tự học là kỹ năng cạnh tranh tiên tiến của bạn mà bạn nên nhấn mạnh và thể hiện với niềm tự hào. Ngoài ra, bạn nên thể hiện niềm đam mê lập trình và mong muốn cải thiện bản thân.

Nhà tuyển dụng muốn biết gì về kinh nghiệm lập trình của tôi? Các nhà tuyển dụng có muốn xem mã tôi đã viết hay họ có thể muốn xem phần mềm đang hoạt động không?

Họ muốn nhìn thấy thành quả của bạn và kỹ năng suy luận phân tích. Họ muốn xem - những gì bạn đã làm đã mang lại lợi ích cho dự án, bạn đã đóng vai trò gì trong việc thực hiện một dự án nếu bạn làm việc trong một nhóm. Làm thế nào bạn khắc phục sự cố và khắc phục các vấn đề kỹ thuật. Cách bạn làm việc với các trường đại học, cách bạn xử lý áp lực công việc.

Một số điểm khác có thể rất quan trọng đối với nhà tuyển dụng:

  1. Thái độ tốt
  2. Đam mê lập trình
  3. Trải nghiệm máy tính - để thấy rằng bạn hiểu những điều cơ bản về cách thức hoạt động của máy tính và phần mềm
  4. Đạo đức làm việc và kỹ năng mềm
  5. Có khả năng học hỏi và tự hoàn thiện
  6. Lịch sử giáo dục
  7. Kinh nghiệm làm việc trước đây
  8. Thiếu các khái niệm định sẵn
  9. Khả năng đặt câu hỏi - Có, đặt câu hỏi thay vì đưa ra các giả định.

1

Ngoài các câu trả lời khác - liệt kê các công cụ bạn đã học khi bạn đang tự dạy mình.

Tôi đã đào tạo sinh viên tốt nghiệp từ các trường tên tuổi có bằng cấp tên lớn khăng khăng viết mã Java trong notepad của Windows và sử dụng trình biên dịch dòng lệnh ('tốt hơn theo cách đó' - cho một chương trình một lớp). Hầu hết các nơi làm việc sử dụng IDE và các công cụ lập trình khác. Và dạy họ cách sử dụng Eclipse dễ hơn là cố gắng dạy họ SVN.

Bằng cách liệt kê một hoặc nhiều môi trường IDE hoặc (quan trọng hơn) một hoặc nhiều công cụ lưu trữ mã, bạn sẽ cho thấy bạn đã sẵn sàng làm việc với một nhóm.

Trả lời B: nếu bạn có thể đến đó, hãy thử giao dịch CEBIT tại Hanover ở Đức. Chúng tôi thường có được những người đến thăm gian hàng của chúng tôi yêu cầu việc làm ở đất nước của chúng tôi. Xác suất thấp là bạn sẽ gặp đúng người có thể giúp bạn. Hoặc hỏi họ nếu họ cần một người địa phương / Châu Âu để giúp họ.


Điểm tốt trong việc học các IDE khác nhau. Thái độ của tôi cho đến nay vẫn là "whadev, tôi sẽ học chúng khi cần".
Ano Päivinen

1
Tôi thấy quan điểm của bạn về IDE, nhưng tôi sẽ đưa ai đó chỉ có kinh nghiệm Java về dòng lệnh qua nhà phát triển BlueJ bất cứ ngày nào!
Michael K

0

Một khi bạn có thể chứng minh bạn đã viết mã chất lượng, cách thức và nơi bạn học lập trình ít quan trọng hơn. Bạn đã xây dựng toàn bộ ứng dụng, do đó bạn sẽ có thể giải thích về thiết kế, các vấn đề bạn gặp phải và lý do tại sao bạn chọn các giải pháp đó.

Nếu ứng dụng của bạn không nổi tiếng, bạn sẽ phải giải thích thêm trong CV và thư xin việc. Có một số lượng lớn người dùng là một lợi ích vì nó cho thấy bạn có thể xử lý quy mô, doanh thu được tạo ra sẽ khó có thể thêm bất kỳ lợi ích nào. Ai đó có thể thuê một lập trình viên để tạo ra một tràng pháo tay bằng cách sử dụng lá số tử vi để giúp các bác sĩ phẫu thuật não. Không chắc chắn tôi sẽ giữ lập trình viên chịu trách nhiệm cho sản phẩm vô dụng này. Có thể một người khởi nghiệp sẽ thích một nhà phát triển với ý nghĩa sản phẩm nào đó, nhưng họ không thể chống lại bạn vì bạn cần thanh toán hóa đơn của mình.


0

Điều tôi muốn biết là cách tốt nhất để thể hiện kinh nghiệm của tôi với nhà tuyển dụng là gì?

Nếu độ không có sẵn, chứng chỉ đã biết là một lợi thế. Một số chứng chỉ không yêu cầu một khóa học, bạn chỉ có thể thực hiện bài kiểm tra.

Nhà tuyển dụng muốn biết gì về kinh nghiệm lập trình của tôi?

Kinh nghiệm lập trình của bạn bao gồm trong các dự án. Trong CV bạn viết kỹ năng của bạn. Tại cuộc phỏng vấn, bạn sẽ được hỏi về các dự án bạn đã làm việc. Sau đó, bạn sẽ nói về những gì bạn đã làm, những vấn đề bạn gặp phải, các giải pháp bạn tìm thấy, v.v.

Các nhà tuyển dụng có muốn xem mã tôi đã viết hay họ có thể muốn xem phần mềm đang hoạt động không?

Có lẽ. Cá nhân tôi đã không nghe về việc các nhà tuyển dụng yêu cầu xem mã (bên cạnh mã bạn viết trong cuộc phỏng vấn kỹ thuật, như một bài kiểm tra). Nếu bạn là một nhà thiết kế web hoặc một nhà thiết kế giao diện người dùng, trong hầu hết các trường hợp họ sẽ muốn xem một số trang web bạn đã tạo hoặc thiết kế.

Hay họ chỉ quan tâm phần mềm của tôi đang được sử dụng bao nhiêu / nó đã tạo ra bao nhiêu doanh thu? Tôi có nên viết về phong cách thiết kế và lập trình của mình không?

Hầu hết các nhà tuyển dụng sẽ quan tâm đến các ngôn ngữ lập trình mà bạn viết thành thạo, kiến ​​thức bạn có và các kỹ năng bạn có được. Phần mềm được sử dụng bao nhiêu và doanh thu được tạo ra là công cụ tiếp thị, không phải công cụ lập trình. Hầu hết các công ty có phong cách thiết kế và lập trình riêng. Họ sẽ mong đợi rằng một nhân viên nên làm quen với các kỹ thuật như Agile, Scrum, Extreme tùy thuộc vào những gì họ sử dụng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.