CodeGym /Blog Java /Ngẫu nhiên /Trở thành một Senior Developer là như thế nào. Hướng dẫn ...
John Squirrels
Mức độ
San Francisco

Trở thành một Senior Developer là như thế nào. Hướng dẫn ngắn về vai trò

Xuất bản trong nhóm
Theo truyền thống, trong ngành công nghệ, các nhà phát triển được chia thành bốn cấp độ dựa trên trình độ chuyên môn của họ: Sơ cấp, Trung cấp, Cao cấp và Trưởng nhóm. Trong hai bài viết trước, chúng tôi đã đề cập đến tất cả những điều cơ bản về việc trở thành Nhà phát triển cấp trungcấp cơ sở là như thế nào . Bây giờ là lúc để chuyển sang phân cấp tiếp theo. Nhà phát triển cấp cao, cảm giác trở thành một nhà phát triển cấp cao như thế nào và cấp cao khác với lập trình viên cấp trung như thế nào? Hãy cùng tìm hiểu. Trở thành một Senior Developer là như thế nào.  Hướng dẫn ngắn về vai trò - 1

Nhà phát triển cấp cao là ai?

Trong các bài viết về nghề nghiệp và chuyên môn trong phát triển phần mềm, chúng tôi luôn phải đưa ra tuyên bố từ chối trách nhiệm nào đó, giải thích rằng nhận thức và hiểu biết về một vị trí nhất định có thể khác nhau rất nhiều, tùy thuộc vào công ty, ngành mà công ty đó đang hoạt động và các yếu tố khác. . Một số người, chủ yếu là những người có xu hướng hơi bảo thủ, tin rằng bạn chỉ được phép gọi mình là Cấp cao nếu bạn có hơn 10 năm kinh nghiệm viết mã, điều này có trách nhiệm. Có nghĩa là, chỉ những năm bạn thực sự viết mã với tư cách là nhân viên toàn thời gian, bạn không thể bắt đầu tính từ lần đầu tiên bạn thử lập trình trên Cơ bản ở tuổi 12 (như nhiều lập trình viên trẻ có xu hướng làm, khiến các lập trình viên Senior thực sự khó chịu ). Ít bảo thủ hơn, nhiều người tin rằng hơn 5 năm làm việc toàn thời gian với tư cách là nhà phát triển phần mềm cho phép bạn tự gọi mình là Senior. Mặt khác, số năm kinh nghiệm chỉ là một con số, điều thực sự quan trọng là kiến ​​thức, kỹ năng và kinh nghiệm áp dụng. Đây là lúc bạn phải thực sự cống hiến để xứng đáng với danh hiệu Senior, bởi vì Senior Developer thường được coi là một phù thủy mã hóa toàn năng, biết tất cả. Trong nhận thức của cấp quản lý, Senior thường là người biết cách giải quyết bất kỳ nhiệm vụ nào liên quan đến dự án hoặc cách viết mã được yêu cầu. Nhưng một trong những chức năng quan trọng nhất của Nhà phát triển cấp cao trong một dự án phát triển phần mềm cụ thể là kiến ​​thức về bản thân dự án với tất cả các vấn đề, nhu cầu, sắc thái của nó, v.v. Có khả năng làm việc độc lập là một phẩm chất quan trọng của Senior. Điều này có nghĩa là Senior biết phải làm gì và khi nào, và không cần giám sát để hoàn thành công việc mà anh ta phải làm. Và đây là một phẩm chất khá có giá trị trong mắt bất kỳ nhà tuyển dụng nào, vì nó có nghĩa là bạn có thể giao cho nhà phát triển này một nhiệm vụ liên quan đến dự án và để anh ấy/cô ấy lo phần còn lại. Với “tất cả những việc còn lại” là: tìm ra nhu cầu, yêu cầu và hạn chế để hoàn thành nhiệm vụ, đưa ra cách tiếp cận phù hợp, tìm công cụ phù hợp, chia nhiệm vụ lớn thành các nhiệm vụ nhỏ hơn và giao cho Trung cấp và Trung cấp. Nhà phát triển, v.v. Có một khía cạnh chính khác giúp phân biệt Người cao tuổi với các lập trình viên Trung cấp và Sơ cấp. Đó là trong mã họ viết và cách họ làm điều đó. Cấp cao thường là và phải là người viết mã rõ ràng, đơn giản và ngắn gọn nhất. Đôi khi đến mức mã này trông quá đơn giản và cơ bản. Điều này là do Cấp cao phải xem xét không chỉ việc hoàn thành nhiệm vụ là kết quả cuối cùng mà còn là tác động tổng thể của mã mới đối với cơ sở mã của dự án. Các nhà phát triển cấp cao viết mã của họ có lưu ý đến khả năng bảo trì và khả năng mở rộng, và đây là thế mạnh chính của họ, thứ chỉ có thể đi kèm với kinh nghiệm chứ không phải gì khác.

Trách nhiệm của một Senior Developer là gì?

Bây giờ, hãy nói chi tiết hơn về một số trách nhiệm tiêu chuẩn và phổ biến nhất của Nhà phát triển cấp cao, đương nhiên tập trung vào các trách nhiệm điển hình của lập trình viên Java.
  • Xác định và phân tích các yêu cầu của người dùng;
  • Ưu tiên, chỉ định và thực hiện các tác vụ viết mã;
  • Phát triển ứng dụng Java;
  • Xem xét mã làm việc cho độ chính xác và chức năng;
  • Phân tích các đoạn mã thường xuyên;
  • Luôn cập nhật công nghệ mới và hướng dẫn các nhà phát triển Junior cách sử dụng công nghệ đó;
  • Đưa ra các ý tưởng và giải pháp liên quan đến chu kỳ phát triển với các thành viên khác trong nhóm;
  • Chịu trách nhiệm chung cho tất cả các công việc phát triển và mã của dự án.

Yêu cầu đối với Senior Developer

Dưới đây là danh sách các yêu cầu phổ biến và điển hình nhất đối với Nhà phát triển cấp cao mà bạn nên đáp ứng để có được công việc này. Tất nhiên, các yêu cầu sẽ khác nhau tùy thuộc vào chính sách tuyển dụng của công ty, công nghệ được sử dụng trong dự án và ngôn ngữ lập trình của bạn.
  • Kiến thức chung sâu rộng về phát triển phần mềm và các công nghệ của nó;
  • Kiến thức vững chắc về Java;
  • Có kinh nghiệm thiết kế, xây dựng và thử nghiệm các ứng dụng doanh nghiệp;
  • Kiến thức chuyên sâu về các framework Java phổ biến như Spring, Spring Boot hoặc Java EE, JSF và các framework khác;
  • Có kinh nghiệm với Thiết kế hướng đối tượng (OOD).
Đây chỉ là những yêu cầu cơ bản liên quan đến lập trình, nhưng kiến ​​thức kỹ thuật thường là không đủ để có được công việc của Nhà phát triển cấp cao, vì có rất nhiều kỹ năng quan trọng khác tạo nên một Cấp cao vững vàng. Dưới đây là một số yêu cầu phi công nghệ thường được đề cập đối với Sr. Developer.
  • Kỹ năng quản lý thời gian và ủy quyền tốt;
  • Khả năng giải quyết vấn đề;
  • Kỹ năng giao tiếp tốt;
  • Kỹ năng giao tiếp bằng văn bản và bằng lời nói mạnh mẽ;
  • Khả năng đáp ứng thời hạn và suy nghĩ chiến lược.

Nhà phát triển cấp cao kiếm được bao nhiêu?

Như bạn có thể biết, khi nói đến mức lương cho các công việc mã hóa ở Mỹ, đối với một Nhà phát triển cấp cao có kinh nghiệm, bầu trời là một giới hạn, vì những gã khổng lồ như Google, Facebook, Amazon, Apple và Microsoft đang trả RẤT NHIỀU cho các kỹ sư phần mềm . Ví dụ: tại Google, một kỹ sư phần mềm ở Cấp độ 7, được coi là mức cao nhất mà bạn có thể đạt được với tư cách là nhà phát triển, có thể kiếm được tổng cộng 608.000 đô la một năm. Nhưng chúng ta hãy đi qua con số trung bình. Theo Glassdoor , một lập trình viên cấp cao trung bình ở Mỹ kiếm được khoảng 121.000 đô la mỗi năm, cao hơn đáng kể so với mức lương của một lập trình viên cấp trung là 71.000 đô la một năm và mức lương trung bình là 63.502 đô la một năm mà các nhà phát triển cấp thấp kiếm được ở Mỹ. một báo cáobởi PayScale, một Nhà phát triển cấp cao có 10-19 năm kinh nghiệm kiếm được tổng số tiền thù lao trung bình là 109.122 đô la dựa trên 5.523 mức lương. Ở giai đoạn cuối sự nghiệp (20 tuổi trở lên), nhân viên kiếm được tổng số tiền thù lao trung bình là 111.432 đô la. Ở Đức , theo PayScale, một nhà phát triển phần mềm Cấp cao với hơn 10 năm kinh nghiệm kiếm được tổng số tiền thù lao trung bình là 63.638 €. Ở Pháp, mức lương trung bình của Người cao tuổi là €54,982. Như thường lệ, khi nói đến các con số thuần túy, các lập trình viên Mỹ dẫn trước các đồng nghiệp của họ ở châu Âu và các nơi khác. Một điểm thú vị khác cần lưu ý là các lập trình viên cấp cao ở Mỹ kiếm được nhiều tiền hơn đáng kể so với các lập trình viên cấp trung. Có lẽ, điều này sẽ được giải thích tốt nhất với giả định rằng phần lớn các lập trình viên Cấp cao thực sự chuyên nghiệp và có kinh nghiệm ở Mỹ làm việc cho những gã khổng lồ công nghệ Mỹ, những người chi tiêu cho lực lượng lao động phần mềm hàng đầu thế giới.

quan điểm nghề nghiệp

Khi nói đến quan điểm nghề nghiệp, Senior Developer chắc chắn có chúng. Nhưng điều buồn cười là, phần lớn trong số họ không thực sự tìm kiếm bất kỳ thứ gì. Các vị trí như Trưởng nhóm và Trưởng nhóm công nghệ sẽ là một trong những lựa chọn chính để mong đợi khi đạt đến cấp độ Cao cấp. Cũng như các tùy chọn khác nhau trong quản lý công nghệ. Có lẽ các vị trí CTO và CEO của một công ty công nghệ là những thành tựu cao nhất có thể có trong sự nghiệp của một nhà phát triển cấp cao. Tất nhiên, CTO là một công việc thực tế hơn, vì ngay cả trong ngành công nghệ, phần lớn các CEO trên thực tế không có hoặc có rất ít kiến ​​thức về kỹ thuật.

Trở thành một Nhà phát triển cấp cao sẽ như thế nào. ý kiến

Đương nhiên, khi nói đến vị trí Nhà phát triển cấp cao nói chung, hầu hết các cuộc thảo luận có xu hướng tập trung vào hai chủ đề chính mà các nhà phát triển muốn tranh luận: điều gì thực sự khiến bạn trở thành Nhà phát triển cấp cao và bao lâu thì bạn có thể bắt đầu gọi mình là Cấp cao. “Điều đó có thể khiến một số người ngạc nhiên, nhưng các công việc cấp Cao luôn yêu cầu ứng viên phải có từ 5 đến 8 năm kinh nghiệm. Có một số yêu cầu từ 10 năm trở lên, nhưng không nhiều. Với tư cách là Nhà phát triển cấp cao, một công ty sẽ mong đợi bạn có thể đưa ra một ý tưởng mơ hồ, chỉ rõ ý tưởng đó, lập kế hoạch phát triển, gắn kết một nhóm và theo đuổi ý tưởng đó cho đến khi hoàn thành. Trong khi đó, một nhà phát triển trung gian nói chung sẽ được kỳ vọng thực hiện mà không có sự giám sát, các nhiệm vụ cá nhân được giao cho họ, làm việc trong một nhóm và thực hiện một số cố vấn.chia sẻ quan điểm của mình. “Với Nhà phát triển cấp cao, tôi có thể đưa ra một mục tiêu cấp cao/mơ hồ hơn và họ có thể chỉ ra mục tiêu đó, lập kế hoạch thực hiện, do tôi điều hành, sau đó thực hiện nó với ít thao tác trực tiếp nhất. Vì vậy, khi bạn cảm thấy tự tin rằng mình có thể lấy một ý tưởng mơ hồ và hoàn thành nó một cách trọn vẹn thì bạn là Nhà phát triển cấp cao. Lưu ý rằng điều đó không có nghĩa là bạn không bao giờ yêu cầu trợ giúp, bởi vì mọi người thỉnh thoảng đều làm như vậy, nhưng bạn có thể thúc đẩy quá trình mà không cần tôi phải trông chừng bạn,” Eric Wise, Đồng sáng lập và Giám đốc điều hành của Wise Telemetry cho biết . Và hãy kết thúc nó với câu trích dẫn khá hay nàycủa Pablo Oliva, một nhà phát triển phần mềm giàu kinh nghiệm đến từ Đức: “Có thể nói, các nhà phát triển Cấp cao mà tôi từng làm việc cùng dường như có một kho công cụ khổng lồ. Bất cứ khi nào có vấn đề phát sinh, họ có rất nhiều nguồn lực để tìm đến. Họ biết khá rõ các công cụ và ngôn ngữ mà chúng tôi sử dụng hàng ngày và biết tìm ở đâu khi họ không biết điều gì đó (có sự khác biệt giữa việc tìm kiếm không mục đích trên Google và truy cập đúng trang hướng dẫn sử dụng ngay lần thử đầu tiên). Kiến thức về các giải pháp cũ và sự thành thạo trong việc tìm kiếm các giải pháp mới khiến họ được đồng nghiệp kính trọng, những người thường tìm đến họ để xin ý kiến. Đổi lại, họ cũng sẽ biết khi nào nên ngừng tìm kiếm một mình và nhờ đồng nghiệp giúp đỡ. Một số có chứng chỉ, một số thì không. Một số đã tốt nghiệp, một số thì chưa. Nhưng họ luôn là điểm tham chiếu cho các đội của họ (và thậm chí cho những người ở các đội khác, đối với một số nhà phát triển cấp cao đặc biệt xuất sắc). Vì vậy, có bao nhiêu người nghĩ đến việc nhờ bạn giúp đỡ khi họ gặp khó khăn?”
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION