Một công ty thường mong đợi gì từ một nhà phát triển Perl? [đóng cửa]


8

Có bất kỳ kỳ vọng chung nào từ các nhà tuyển dụng phối cảnh khi họ thuê một nhà phát triển Perl không?

Đối với một sinh viên thích Perl và Linux và muốn có một công việc như nhà phát triển Perl, bạn muốn giới thiệu gì để học?

Tôi đang tìm kiếm những thứ chung chung và có thể áp dụng cho hầu hết / tất cả các vị trí Perl , trái ngược với các chi tiết cụ thể về các yêu cầu của một công ty nhất định.

Nói cách khác, những điều tôi nên có thể / biết để trở nên hấp dẫn hơn đối với BẤT K company công ty nào đang tìm kiếm một nhà phát triển Perl.


2
Tại sao tất cả các downvote?
DVK

2
Bạn không nghĩ là một nhà phát triển PERL, bạn nên tìm hiểu mọi thứ về nó, thay vì tập trung vào khía cạnh này hay khía cạnh khác
Pankaj Upadhyay

Đối với tất cả những người bỏ phiếu - Tôi thực sự đánh giá lại câu hỏi để loại bỏ tính chủ quan dựa trên phản hồi hữu ích từ người điều hành. Hãy thay đổi downvote của bạn.
DVK

Đây là một câu hỏi hay. Perl là một ngôn ngữ có phần lỗi thời dường như có nhiều hơn những chia sẻ và thành ngữ của nó. Ngoài ra, có nhiều vị trí "chuyên gia" Perl ngoài kia hơn "đàn em" ngày nay.
joshin4colours

1
@joshin - bạn có ví dụ cụ thể về nơi Perl os "hơi hẹn hò" không?
DVK

Câu trả lời:


20

Một số điểm:

  • Là một nhà phát triển Perl, hầu như bất kỳ công ty nào cũng mong bạn biết nhiều hơn Perl. Ngay cả trong cửa hàng Perl thuần túy, bạn cần biết (lý tưởng) JavaScript / phát triển web tổng thể; và SQL cho công việc back-end.

    Và hầu hết các công ty đều có sự kết hợp của các ngôn ngữ, vì vậy bạn nên chuẩn bị trở thành Perl / C ++ hoặc Perl / Java hoặc bất cứ điều gì khác là cần thiết. Nhiều như sự thật làm tôi khó chịu, không có nhiều cửa hàng "chỉ dành cho Perl" tốt mà tôi biết.

  • Như với bất kỳ ngôn ngữ nào, một công ty sẽ mong đợi bạn sử dụng ngôn ngữ đó một cách hiệu quả. Điều này có một số khía cạnh, một số quan trọng hơn trong Perl

    • Thư viện có sẵn. Đây là một điểm CHÍNH cho Perl, tất nhiên. Rất quen thuộc với CPAN và biết thư viện nào được coi là "trạng thái nghệ thuật" / "phổ biến nhất" cho các nhiệm vụ chung cụ thể là điều bắt buộc.

      Bạn có thể đọc lại - mà không cần hỏi SO - thư viện "chuẩn" để tải tệp CSV không? Để phân tích dữ liệu ra khỏi tài liệu HTML? Đối với bài kiểm tra đơn vị viết? Đối với các đối tượng chế giễu? Để tạo dữ liệu JSON? Để đọc các tệp cấu hình XML đơn giản? Đối phó với băm có trật tự? Để xử lý ngoại lệ (thử / bắt logic)?

    • Ditto cho khung. Bạn có biết cách xây dựng các bài kiểm tra đơn vị cho các mô-đun Perl và kiểm tra tích hợp cho mã Perl không? Bạn có biết ít nhất một khung tạo khuôn mẫu web hay tốt hơn là khung phát triển web MVC (gợi ý: Catalist :)? Bạn có biết làm thế nào để sử dụng các thư viện kết nối cơ sở dữ liệu?

    • Bạn có biết nội bộ của Perl? Bạn có thể làm việc với các mô-đun XS hoặc ít nhất có thể đọc được mã không?

    • Bạn có biết các tính năng làm cho Perl trở thành một ngôn ngữ độc đáo về biểu cảm và cách sử dụng chúng không? Bạn có thể dễ dàng sử dụng map, grepBiểu thức chính quy, cấu trúc dữ liệu lồng nhau, tham chiếu chương trình con không? Bạn có biết tự động hóa là gì và cách nó cho phép bạn viết 1 dòng mã Perl tương đương với một trang có giá trị của mã Java không?

    • Bạn có biết các tính năng nâng cao của Perl không? Bạn đã đọc Perl thứ tự cao hơn và có thể sử dụng hiệu quả tất cả các kỹ thuật trong đó? Hãy nhớ rằng một trong những điểm mạnh của Perl là "gần như Lisp" :) - vì vậy bạn cần có khả năng tận dụng điểm mạnh của Lispy vào năng suất của mình.

    • Bạn có biết rằng cộng đồng Perl được coi là một trong những tài sản chính của nó không? Bạn có biết hai nơi chính để đặt câu hỏi Perl không?

      Bạn đã tham gia thẻ Perl trên StackOverflow - vừa đặt câu hỏi thông minh vừa cố gắng trả lời câu hỏi (ngay cả khi bạn không biết câu trả lời hoàn hảo và ngay cả khi nó đã được trả lời - THỰC HÀNH cố gắng trả lời sẽ giúp bạn hiểu rõ hơn về Perl nhà phát triển).

  • Là một nhà phát triển Perl, công ty có thể mong đợi bạn có thể giao dịch với cả di sản (5,8 và trước đó) Perl, hoặc, nếu bạn may mắn, với Modern Perl. Có nghĩa là, biết cả cách xây dựng đối tượng theo cách cũ (chi tiết - bạn có biết cách làm việc với các đối tượng bên ngoài không? Làm thế nào để triển khai các mẫu OO tiêu chuẩn?) - và cách thực hiện OO dựa trên Moose; Phát triển web Catalyst MVC và truy cập dữ liệu DBIx ORM. Đối với phần sau, đọc Modern Perl của chromatic là điều bắt buộc.

  • Một công ty sẽ mong đợi bạn biết thứ độc lập ngôn ngữ. Thuật toán, cấu trúc dữ liệu, kết nối mạng, lập trình đồng thời, thiết kế GUI, Kiểm tra đơn vị, nội bộ hệ điều hành (hoặc bên ngoài - đôi khi bạn có thể dành 30 giây để xây dựng một công cụ ống vỏ Unix mà thậm chí phải mất một nhà phát triển Perl dày dạn 1-2 giờ để đánh bóng - và đôi khi một ông chủ tốt sẽ lưu ý rằng :))

  • Một công ty sẽ mong đợi bạn nhiều hơn một con khỉ mã Perl. Bạn có kỹ năng giao tiếp? Bạn có thể giao tiếp hiệu quả với người dùng và các nhà phát triển khác không? Bạn có thể viết mã rõ ràng / ý kiến ​​/ tài liệu? Bạn có viết mã của mình như thể nhà phát triển tiếp theo duy trì nó là một kẻ tâm thần đang hoành hành, người biết bạn sống ở đâu không? Và quan trọng nhất, bạn đã chuẩn bị để tìm hiểu doanh nghiệp mà mã của bạn hỗ trợ chưa? Giá trị của nhà phát triển tăng theo một mức độ lớn khi họ hiểu người dùng của họ làm gì và làm thế nào và tại sao họ làm điều đó và có thể dịch nó thành "làm thế nào tôi có thể làm cho công việc của họ hiệu quả hơn với sản phẩm của tôi".


2
Tôi nghĩ rằng đây là một câu trả lời tuyệt vời. Nó có một câu hỏi khá chung chung và vẫn tạo ra rất nhiều thông tin rất hữu ích.
Martin Ba

Gửi @DVK, mặc dù tôi rất thích câu trả lời của bạn, tôi cảm thấy rằng nó bỏ lỡ một số lĩnh vực năng lực cốt lõi quan trọng nhất của Perl. Không có ngôn ngữ nào khác cung cấp hỗ trợ Unicode đầy đủ, tiện lợi và linh hoạt như Perl - điều mà giờ đây, chỉ riêng Web là> 80% Unicode, thực sự quan trọng. Các cuộc đấu tranh của Java, Javascript là một trò đùa và Python và Ruby không chỉ là phụ trợ cho việc xử lý Unicode. Thứ hai, bạn không đề cập đến việc khớp mẫu, trong Perl không phải là một mà là nhiều trạng thái lượng tử được loại bỏ khỏi xử lý regex bằng bất kỳ ngôn ngữ nào khác. Sử dụng Perl cho các điểm mạnh của nó.
tchrist

@tchrist - Tôi đã đề cập đến RegEx trong "Bạn có biết các tính năng làm cho Perl trở thành một ngôn ngữ độc đáo về mặt biểu cảm và cách sử dụng chúng không?" phần. Không đủ điều kiện để nói về Unicode, nhưng bạn rất sẵn lòng chỉnh sửa nó vì tôi biết bạn là ai :)
DVK

1
Câu trả lời sử thi DVK. Làm tốt lắm thưa ngài.
Rocklan

1
Tôi đã nhận được công việc là một nhà phát triển Perl 3 tháng trước, hôm nay tôi đã đọc câu hỏi cũ này của tôi và bây giờ tôi cảm thấy rằng tất cả mọi thứ bạn nêu trong câu trả lời của bạn là chính xác 100%. Câu trả lời rất hay. Cảm ơn :) và vâng tôi đang làm việc với mã kế thừa (chúng tôi sử dụng perl 5.8.5 trong công ty của chúng tôi).
Chankey Pathak

0

Tôi nghĩ bạn khá nhiều đúng. Nó hoàn toàn phụ thuộc vào chi tiết cụ thể của công ty cần gì, mức độ kinh nghiệm của những người đã làm việc ở đó và cơ sở khách hàng của họ là gì (tức là tập hợp các vấn đề họ giải quyết để tạo doanh thu). Bạn có thể sẽ được phục vụ tốt nhất bằng cách chỉ đọc qua các bài đăng công việc và tìm hiểu những vấn đề mà các nhà phát triển Perl được sử dụng để giải quyết. Cố gắng tìm một công ty mang lại cho bạn sự cân bằng giữa tăng trưởng / kinh nghiệm mà bạn muốn, văn hóa và sự đền bù phù hợp với những gì bạn đang tìm kiếm.

Đối với tôi, tôi cần tham gia vào việc giải quyết các vấn đề mã hóa thú vị, và trong lĩnh vực đó, không phải tất cả các nơi đều như nhau. Ví dụ: tôi có sở thích phát triển web, tự động hóa, tập dữ liệu lớn và trải nghiệm người dùng. Do đó, tôi thích những nơi có ứng dụng web có lượng người dùng lớn và đa dạng mà tôi có thể tương tác để nhận phản hồi về những gì họ muốn, vì vậy tôi có thể xây dựng nó cho họ. Đó là một điểm cộng nếu bộ dữ liệu tôi làm việc rất lớn / phức tạp (vì đó là niềm vui đối với tôi) và nếu có cơ hội để viết các tập lệnh tự động hóa (ví dụ: xử lý hàng loạt để gửi thông báo email, dọn dẹp DB định kỳ và các tác vụ tạo khối, báo cáo tự động , Vân vân.).

Loại mã nào bạn viết trong thời gian rảnh rỗi khi bạn không viết mã cho lớp? Cố gắng tìm một nơi viết cùng loại mã.


0

Cùng với điểm @DVK và các nhà phát triển khác được đề cập, các công ty có thể tìm kiếm các kỹ năng mã hóa lập trình C tốt vì lý do hiệu suất, có nhiều mô-đun phân tích được viết bằng C, do đó đôi khi bạn có thể cần gỡ lỗi cho một số vấn đề. Vì vậy, tốt hơn nếu bạn biết mã bằng ngôn ngữ C.


Tôi hiểu điều này ngay bây giờ :)
Chankey Pathak
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.