Làm thế nào để bạn thoát ra khỏi vai trò của một người duy trì mã? [đóng cửa]


13

Trong ba công việc cuối cùng của tôi, tôi là một người duy trì mã. Trong cả ba trường hợp, tôi đã được thuê sau khi phần lớn mã cho dự án đã được viết.

Tôi là một lập trình viên tự học. Trước khi tôi bắt đầu công việc chuyên nghiệp đầu tiên của mình, tôi có thể có hàng tá dự án dưới vành đai mà tôi đã bắt đầu và giao hàng thành công.

Viết mã mới và duy trì mã hiện có là hai công việc hoàn toàn khác nhau. Nó giống như so sánh một kỹ sư hàng không với một thợ máy bay.

Nó đặc biệt hút khi bạn là một thợ máy bay làm việc trên một chiếc máy bay được thiết kế bởi một kỹ sư không cố gắng chế tạo máy bay theo bất kỳ cách nào hợp lý hoặc dễ bảo trì.

Tôi bắt đầu cảm thấy muốn ở bên khi dự án bắt đầu, bạn phải là một trong những người đặc biệt , người đã vượt qua những người còn lại trong lĩnh vực khoa học máy tính. Điều gì làm cho nó ở vị trí đó?

Tôi cảm thấy như câu hỏi này thực sự không có câu trả lời dễ dàng nào, nhưng ai đó có thể cho tôi một số hiểu biết không? Bạn đã bao giờ ở tầng trệt của một dự án mới? Nó đã làm gì để đạt được điều đó?


Bạn có áp dụng cho công việc Code duy trì?
James

@James tất cả các công việc là các công việc duy trì mã, hoặc ít nhất là tất cả các công việc mà tôi bắt gặp ...
nbv4

Đừng nản lòng. Trong công nghệ không có gì là vĩnh viễn. Bạn có thể cảm thấy như thợ máy so với kỹ sư. Nhưng tôi nghĩ có nhiều công ty với những người lãnh đạo tự học và những con ong thợ có bằng cấp cao. Tình trạng, kiến ​​thức và nỗ lực tuân thủ giáo dục chính quy nên có một số phần thưởng, nhưng câu trả lời của bạn cho "Gần đây bạn đã làm gì cho tôi?" tốt hơn, nó đi một chặng đường dài.
DeveloperDon

Câu trả lời:


6

Bảo trì có nghĩa là những thứ khác nhau cho những người khác nhau, và đến vì những lý do khác nhau.

  • Trường hợp xấu nhất, hệ thống ban đầu bị ném vào nhau một cách vội vàng, nhóm ban đầu đã lấy tín dụng cho toàn bộ. Họ tuân theo quy tắc 80/20, vì vậy trong khi có thể có một sản phẩm khả thi tối thiểu có thể bán được, rất nhiều khách hàng cần rất nhiều sửa chữa và cải tiến nhỏ. Nhiều vấn đề, nhưng không còn nhiều vinh quang. Bạn có công việc khó khăn nhất, và vô ơn của nó. Tôi hy vọng đây không phải là tình huống của bạn.
  • Trường hợp tốt hơn, bạn đã cho thấy rằng bạn cẩn thận với công việc của mình và có thể được tin tưởng để thực hiện các thay đổi cho sản phẩm thực địa mà không phá vỡ nó. Vấn đề còn lại là quá khó đối với những người đã rèn hệ thống ban đầu cùng nhau. Có thể họ đã thất bại trong việc xây dựng hệ thống để tồn tại và bạn ở đó, có lẽ là người thay thế họ, để thiết lập mọi thứ đúng đắn và giải cứu khách hàng, dự án và lợi nhuận.
  • Trường hợp rất có thể, 60% chi phí dự án đến trong quá trình bảo trì. Có lẽ đó là thời điểm, có lẽ tổ chức của bạn tách biệt giữa phát triển mới và bảo trì, nhưng bạn chiếm đa số 3/5 vì nhiều người trong chúng ta thực hiện bảo trì.

Dưới đây là một vài điều để thử:

  • Làm một công việc tuyệt vời, có một thái độ tuyệt vời, là một nhà lãnh đạo ý tưởng.
  • Càng nhiều càng tốt, làm việc theo nhóm, không phải một mình.
  • Học các ngôn ngữ mới hơn.
  • Tìm hiểu các nền tảng mới hơn.
  • Yêu cầu làm việc trên các chương trình nhỏ hơn, thậm chí có thể áp dụng với các công ty nhỏ hơn.
  • Có kỹ năng và tham gia vào tài liệu. Khi các dự án bắt đầu, ngay cả trong kỷ nguyên thác nước, họ cần rất nhiều sự phối hợp bằng văn bản để lập bản đồ đường đi, tài liệu, đánh giá và làm rõ các yêu cầu.
  • Thật nguy hiểm khi các dự án bắt đầu trong tay những người không đánh giá cao quản lý yêu cầu, ước tính và đánh giá rủi ro, vì vậy hãy học và thực hành những kỹ năng này nhiều nhất có thể.
  • Được đào tạo chính thức hoặc chứng chỉ. Điều này có thể làm tăng trạng thái của bạn và làm cho bạn trở thành một lựa chọn hấp dẫn hơn khi các nhóm cho các dự án phát triển mới được thành lập.
  • Bắt đầu một công ty hoặc một số tư vấn ở bên. Điều này cung cấp cho bạn lối thoát sáng tạo để nhắm mục tiêu loại công việc yêu thích của bạn và cung cấp cho bạn sự đánh giá tốt hơn về những gì nó muốn bắt đầu mà không có mã hoặc tài liệu.
  • Gần gũi hơn với sếp của bạn và những người có kế hoạch dự án mới.
  • Ngược lại, nếu bạn rất gần với người kiểm tra và QA, đầu ra của họ thường là đầu vào để bảo trì, vậy hãy đoán xem ông chủ của bạn nghĩ bạn làm việc thực sự tốt với ai?
  • Kết bạn càng nhiều và giành được sự tôn trọng của càng nhiều nhà phát triển trường xanh càng tốt.
  • Các nhà phát triển mới là những người có thể làm được, vì vậy hãy thận trọng về bất kỳ gợi ý nào về sự chỉ trích hoặc tiêu cực. Cung cấp cho họ ý tưởng của bạn một cách tự do mà không đổ lỗi hoặc phán xét. Ý tưởng của bạn không cần giới thiệu, chỉ cần nói chúng. Không bao giờ nói, chúng tôi thường làm theo cách này hoặc không hiệu quả, hãy thử cách này. Không bao giờ nói, tôi không biết, nhưng điều này có thể làm việc. Chỉ cần nói ý tưởng. Hoặc tốt hơn, hiển thị nó.
  • Tìm và tận dụng mọi cơ hội để xây dựng một bằng chứng khái niệm có thể biến thành dự án mới của bạn.
  • Xem ra ai phân công bạn làm việc Thông thường, nó phải là một người nào đó trong chuỗi chỉ huy của bạn. Nếu đó là đồng nghiệp của bạn, hãy đẩy lùi một số thời gian. Nếu đó là người mà bạn giám sát, cần phải có một lý do chính đáng để kiểm soát. Nếu đó là QA hoặc kiểm tra, hãy đảm bảo rằng nó quan trọng đối với chuỗi lệnh của bạn và không được lên lịch theo cách trì hoãn công việc bạn đã hứa trước đó.
  • Coi chừng sự hoàn hảo. Sự phát triển mới thường được dành cho những người nhanh nhẹn, ngay cả khi họ lác mắt và không chấm vào t.
  • Dành thời gian học tập và thực hành các kỹ năng dự án sớm phù hợp với dòng phát triển của bạn. Điều này có thể bao gồm: tạo các kho lưu trữ nguồn, xác định môi trường xây dựng, định cấu hình máy chủ tích hợp liên tục, phối hợp chặt chẽ với nhóm phần cứng để đưa lên các bảng mới với các gói hỗ trợ bảng hoặc tự kiểm tra sức mạnh. Nó thậm chí có thể giúp biết cách làm việc với mua để mua các công cụ phát triển mới, đào tạo và phần cứng COTS.
  • Hãy chắc chắn rằng bạn tiếp tục trước khi dự án bảo trì của bạn bị đóng cửa, có thể bằng cách mua sắm các kỹ năng của bạn trong nội bộ để lãnh đạo nhóm và có thể là người quản lý, hoặc bên ngoài.
  • Thành thạo mọi công nghệ bạn biết, và biết rất nhiều công nghệ.

Vai trò bảo trì có thể được chuyển thành lợi thế của bạn theo nhiều cách.

  • Bạn có khả năng có thể làm việc trên mọi dự án mà nhóm của bạn hoặc thậm chí công ty thực hiện.
  • Nếu phát triển và bảo trì mới được tách ra, bạn có khả năng có thể theo dõi một lãnh đạo ít cạnh tranh hơn. Khách hàng tiềm năng cho các dự án mới rất được thèm muốn, nhưng khách hàng tiềm năng có thể sẵn sàng cho bạn hỏi. Nếu bạn có sự khuyến khích và cố vấn để cung cấp, các thành viên của nhóm đó có thể đánh giá cao nó hơn.
  • Nếu dự án đang được bảo trì, bạn có nhiều khả năng giao tiếp với khách hàng. Xử lý sai, điều này kết thúc sự nghiệp. Xử lý đúng, nó nhận được sự chú ý tích cực bên ngoài phát triển mà khó tìm thấy mà không phải là một người quản lý.

Đã nói tất cả những điều này, tôi là ví dụ không phải là hình mẫu. Phần lớn quan điểm này đến từ kinh nghiệm và quan sát.

Có nhiều chương trình mới vẫn cần được viết.
Hãy sẵn sàng và bạn sẽ làm việc trên một bất ngờ sớm.


4

Tôi có một tin xấu cho bạn: rất nhiều ứng dụng mà nhân loại cần đã được viết, chỉ là chúng nên được điều chỉnh phù hợp với môi trường thay đổi liên tục.

Một ngày nào đó, bạn sẽ được yêu cầu viết một phần mới của hệ thống, như, một mô-đun mới và bạn có thể tận dụng kiến ​​thức của mình về phát triển lĩnh vực xanh.

Cho đến lúc đó, bạn có thể cố gắng học tái cấu trúc các ứng dụng cũ để dọn dẹp các mô-đun.

Một bài đọc tốt là " Làm việc với các ứng dụng cũ " và " Tái cấu trúc các mẫu ". Nếu bạn không đọc Tái cấu trúc ban đầu (Fowler), vui lòng làm như vậy. Và học hỏi Phát triển dựa trên thử nghiệm (TDD), luôn luôn giúp đỡ.

Trong trường hợp bạn đang làm việc với PHP, tôi đã viết một bài viết thực hành, mã này vẫn chạy ...

Chúc vui vẻ!


1

Cách dễ nhất để trốn thoát là thay đổi hoàn toàn phong cách lập trình của bạn và đồng thời thêm các kỹ năng mới cùng một lúc. Ví dụ, bạn có thể cố gắng trở thành một Nhà nghiên cứu. Nó có thể không phải là một công việc uy tín trong năm đầu tiên và chắc chắn nó không được trả lương cao như các công việc lập trình thông thường (trong năm đầu tiên nếu bạn là Nhà nghiên cứu / Liên kết nghiên cứu trong nhóm của một trường đại học - tất nhiên là Nhà nghiên cứu cao cấp khá đẹp phù hợp với phần còn lại của ngành công nghiệp), nhưng nó chắc chắn sẽ đưa các kỹ năng của bạn vào những vấn đề khó khăn nhất bạn có thể tìm thấy ngày nay. Sau một công việc như vậy, bạn có thể dễ dàng nhảy vào một vị trí tốt hơn, miễn là bạn có một số dự án thú vị để trình bày với ông chủ tiếp theo của bạn.

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.