Làm cách nào tôi có thể tiến bộ từ nhà phát triển phần mềm sang người quản lý phần mềm hoặc trưởng nhóm? [đóng cửa]


42

Tôi đã là một nhà phát triển phần mềm (dù là bán thời gian hay toàn thời gian) trong gần 3 năm. Tôi luôn là kiểu người có sở trường đó để đi đầu trong mọi việc và cung cấp cho tổ chức xung quanh để hoàn thành công việc. Kể từ khi tôi là người dẫn đầu trong dự án thiết kế cấp cao của tôi hồi đại học, tôi cảm thấy rằng đây là cuộc gọi thực sự của mình, không phải ngồi sau bàn mã hóa. Bây giờ, tôi biết tôi cần hiểu cách viết mã để các nhà phát triển khác thực sự tôn trọng tôi. Ngoài ra, tôi thực sự thích mã hóa. Tôi làm việc trên nhiều dự án phụ ở nhà ngoài công việc, theo kịp các thực tiễn mã hóa tốt nhất, và cố gắng và tiếp tục nâng cao kiến ​​thức về miền.

Câu hỏi chính của tôi là, loại hình hoặc cơ hội nào tôi nên tìm kiếm sẽ giúp tôi phát triển sự nghiệp của mình sang vai trò quản lý hơn là vai trò mã hóa. Như tôi đã nói, tôi thích viết mã, tuy nhiên tôi thậm chí còn yêu thích hơn nữa để có thể thiết kế mọi thứ ở mức cao và tổ chức nhóm theo cách để hoàn thành công việc và theo dõi tiến trình của họ, đồng thời giúp đỡ về kỹ thuật quyết định ở đây và ở đó. Những loại điều này thực sự làm tôi hạnh phúc, trái ngược với việc chỉ ngồi sau bàn làm việc mã hóa cả ngày.

Rõ ràng một trong những ước mơ chính của tôi là tự mình sản xuất một loại phần mềm nào đó cuối cùng sẽ nổ tung và làm cho nó lớn lên, sau đó bắt đầu thuê một nhóm và tự mình làm tất cả, nhưng tôi cảm thấy như khả năng điều đó xảy ra còn tồi tệ hơn thay vì chỉ thay đổi con đường sự nghiệp của tôi một chút để đến nơi tôi muốn đi. Tôi cảm thấy mình có thể thu được sự hài lòng tương tự khi làm điều đó cho một chủ nhân hơn là bản thân mình. Mặc dù tôi chưa từng cảm thấy như vậy trước đây, tôi cảm thấy như vậy chủ yếu là vì tôi không làm những gì tôi THỰC SỰ muốn làm.

Bất kỳ lời khuyên, con trỏ, hoặc những điều cần lưu ý? Bất cứ ai đã làm điều này, và nếu vậy, làm thế nào bạn làm điều đó?


Bạn có loại hình giáo dục nào? Bao lâu bạn đã ở vị trí hiện tại của bạn?
Thomas Owens

Tôi có bằng Cử nhân Khoa học về Khoa học Máy tính. Tôi đã ở vị trí hiện tại của tôi trong khoảng một năm.

1
@slandau Tôi sẽ gọi một cách rõ ràng rằng bạn không muốn nhập vai trò PM. trong khi đó có thể xuất hiện như một hướng rõ ràng; mô tả và mong muốn của bạn khác với vai trò PM và tôi không tin vai trò PM sẽ là thứ mà cuối cùng bạn muốn.
Aaron McIver

1
@AaronMcIver Nó phụ thuộc vào nơi bạn làm việc. Một số PM là kinh doanh, một số PM có bản chất kỹ thuật hơn. Ở một số nơi, "người quản lý kỹ thuật" có thể là một chức danh phổ biến hơn, hoặc ở những nơi khác, nó có thể chỉ đơn giản là "kỹ sư phần mềm".
Thomas Owens

2
Chà, trước tiên, hãy từ bỏ tâm hồn của bạn ... :-)
Paul Tomblin

Câu trả lời:


41

Chuyển từ vai trò phát triển phần mềm sang vai trò quản lý hoặc lãnh đạo là điều cần có thời gian. Tôi học chuyên ngành kỹ thuật phần mềm, nhấn mạnh quy trình kỹ thuật phần mềm và khai thác trong quản lý kinh doanh và truyền thông. Ngay cả với kinh nghiệm học thuật về cách quản lý các dự án phần mềm, cách tuyển dụng và tuyển dụng, cách lãnh đạo các nhóm và cách giao tiếp với các nhóm bằng lời nói và bằng văn bản, tôi thấy rằng hầu hết các vai trò quản lý và lãnh đạo, đặc biệt là trong ngành mà tôi muốn để làm việc, đòi hỏi hơn 5 năm kinh nghiệm trong công nghệ phần mềm (tôi đã có 2, bao gồm cả các đồng nghiệp và thực tập).

Đồng thời, tôi chỉ đơn giản là tiếp tục nghiên cứu về các chủ đề quản lý dự án.

Điều đầu tiên tôi muốn giới thiệu là trở thành một người giao tiếp và đàm phán giỏi. Tìm hiểu làm thế nào để có những cuộc trò chuyện quan trọng. Ngay cả khi là nhà phát triển, vẫn có những quyết định phải đưa ra, với đồng nghiệp, khách hàng và người dùng. Đôi khi bạn phải có những cuộc trò chuyện khó khăn và đạt được thỏa thuận có lợi cho tất cả mọi người. Đó không phải là một mục tiêu dễ dàng, nhưng cuốn sách Cuộc trò chuyện khó khăn: Làm thế nào để thảo luận về vấn đề gì Hầu hết là một mục tiêu mà tôi muốn giới thiệu về vấn đề này. Có những thứ khác, như vượt qua không và bắt đầu có: Thỏa thuận đàm phán mà không đưa ra điều đó cũng sẽ hữu ích. Những thứ này có liên quan bất kể bạn đang ở vị trí nào.

Về mặt kỹ thuật, sự hiểu biết về vòng đời phát triển phần mềm rất quan trọng đối với việc lãnh đạo và quản lý các nhóm phần mềm. Vị trí lãnh đạo có thể có nghĩa là bạn có liên quan đến kỹ thuật yêu cầu, kiến ​​trúc hệ thống phần mềm, thiết kế, thực hiện, kiểm tra và đảm bảo chất lượng và nhiệm vụ bảo trì. Mặc dù bạn không thể là một chuyên gia về tất cả những điều này, nhưng người quản lý hoặc nhà lãnh đạo ít nhất phải hiểu tất cả về họ. Là một nhà phát triển, bạn có thể thực hiện hầu hết các công việc của mình trong thiết kế, triển khai và bảo trì, với một số thử nghiệm là tốt. Tôi rất muốn giới thiệu những cuốn sách như Yêu cầu phần mềm (và nó đồng hành, Thêm về yêu cầu phần mềm ), Kiến trúc phần mềm trong thực tế (mặc dù trường đại học của tôi chuyển sangKiến trúc hệ thống phần mềm: Làm việc với các bên liên quan bằng cách sử dụng các quan điểm và quan điểm sau khi tôi tham gia khóa học kiến ​​trúc, và nó đã được đề xuất cho tôi), và Số liệu và mô hình trong Kỹ thuật chất lượng phần mềm .

Từ góc độ quản lý dự án, bạn có thể tìm hiểu về các mô hình quy trình và phương pháp luận. Có các phương thức nhanh, chẳng hạn như Scrum và Lập trình cực đoan và các phương pháp theo kế hoạch như Waterfall và Xoắn ốc. Ngoài ra còn có các khung phương pháp luận, chẳng hạn như CMMI và Quy trình phần mềm cá nhân / Quy trình phần mềm nhóm. Những người có liên quan đến bạn phụ thuộc vào nơi bạn làm việc, về ngành công nghiệp và công ty. Có một số cuốn sách về các phương pháp và khung khác nhau, nhưng tôi rất khuyến khích Phát triển nhanh: Lịch trình phần mềm thuần hóa cho quản lý kỹ thuật phần mềm nói chung và quy trình kỹ thuật phần mềm.

Nếu bạn muốn tiếp tục việc học của mình, bạn có thể xem xét nhiều hơn về một bản nhạc quản lý kỹ thuật so với nhiều bản nhạc quản lý doanh nghiệp. Nếu bạn muốn có một vị trí quản lý kỹ thuật, hãy xem kỹ thuật phần mềm, quản lý kỹ thuật phần mềm và các chương trình quản lý kỹ thuật. Để biết thêm về theo dõi quản lý kinh doanh, bạn có thể xem xét các chương trình MBA, quản lý kinh doanh hoặc một số chương trình quản lý kỹ thuật có thành phần kinh tế hoặc tài chính mạnh mẽ.


1
Vâng, nhưng làm thế nào để bạn thực sự chuyển từ kỹ sư phần mềm cao cấp sang người quản lý? Ý tôi là, giả sử rằng tôi cảm thấy như tôi biết tất cả những thứ bạn liệt kê ở trên, tôi phải làm gì bây giờ để chứng minh rằng tôi có thể làm điều đó vì tôi không có kinh nghiệm vai trò quản lý chính thức và chỉ có cảm giác rằng tôi thực sự biết tất cả những thứ đó? Làm thế nào để một bước này?
trusktr

19

Những câu trả lời khác rất hay nhưng tôi sẽ gửi 0,02 đô la. Tôi đã chuyển từ một nhà phát triển cơ sở tại công ty hiện tại của mình thông qua các cấp bậc sang nhà phát triển cấp cao và sau đó là trưởng nhóm và bây giờ là kiến ​​trúc sư. Phải mất vài năm. Bất cứ khi nào tôi được thăng chức là vì tôi đã thực hiện các khía cạnh của công việc, và quản lý của tôi chỉ nhận ra điều đó và cho tôi danh hiệu phù hợp. Vì vậy, lời khuyên của tôi là đừng chờ đợi để được nói với bạn là một lãnh đạo kỹ thuật hoặc người quản lý. Chỉ cần bắt đầu đảm nhận trách nhiệm mà mọi người trong các vai trò đó có. Sau một vài tháng hoặc một năm, bạn sẽ thấy rằng về cơ bản bạn đang thực hiện công việc bạn đang nhắm mục tiêu và bạn có thể chỉ ra điều đó cho quản lý của mình nếu họ không nhận thấy điều đó.


2
Tôi đã bị sa thải vì làm chính xác những gì bạn nói tại một công ty (và người quản lý đó đã sa thải tôi sau đó cũng rời công ty). Nó không phải là một phù hợp tốt. Cảm giác như đó luôn là một cuộc chiến để giành lấy những vị trí hàng đầu tại công ty, rất cạnh tranh và bình thường. Sẽ tốt hơn nhiều khi ở một công ty nơi mọi người chủ động cố gắng và hoàn thành những việc lớn hơn họ đã làm trước đó để nhận được sự hỗ trợ, khuyến khích và chỉ đạo từ những người đã cao hơn.
trusktr

9

Tôi sẽ không cố gắng cung cấp một câu trả lời đầy đủ vì Thomas Owens đã liệt kê một số lời khuyên thực sự tốt (+1 cho điều đó).

Chỉ muốn thêm một vài lời khuyên / gợi ý:

  1. Đừng chờ đợi ai đó khiến bạn dẫn đầu; Chỉ cần bắt đầu làm nó. Tôi không có ý chống lại ông chủ hiện tại của bạn, mà thay vào đó hãy chủ động giúp đỡ anh ta. Nếu sếp của bạn giống như tôi, anh ta thường quá tải với quá nhiều nhiệm vụ / cuộc họp trên đĩa của mình. Nếu anh ấy thấy rằng bạn đang cung cấp hướng mà anh ấy có thể không có đủ thời gian để theo kịp, rất có thể anh ấy sẽ rất hạnh phúc khi giao phó một số trách nhiệm quản lý cho bạn. Theo thời gian, nếu bạn làm điều này đúng, sếp của bạn sẽ ủy thác ngày càng nhiều cho bạn (ít để anh ta lo lắng hơn) và anh ta sẽ có nhiều khả năng hỗ trợ bạn trong việc đảm nhận nhiều trách nhiệm hơn đến điểm mà bạn là người lãnh đạo chính thức.
  2. Hãy nhớ rằng xây dựng đội ngũ và lãnh đạo liên quan nhiều đến xã hội học hơn là công nghệ (từ một trong những cuốn sách phương pháp phần mềm phổ biến, có thể là Brooks). Là một người dẫn đầu, mục tiêu của bạn là hiểu mọi người và cách họ cư xử, điều này rất khác so với hiểu cách thức hoạt động của máy tính. Không có nhận thức này, các kỹ sư giỏi tạo ra một số nhóm dẫn đầu tồi tệ nhất vì họ không thực hiện chuyển đổi tinh thần này và nhận ra rằng bạn không thể điều khiển mọi người giống như cách bạn điều khiển máy móc. Trên thực tế, cách tiếp cận duy nhất có vẻ hiệu quả không phải là kiểm soát mọi người mà là hướng dẫn họ. Đọc, đọc và tiếp tục đọc sách / bài viết / blog về lãnh đạo. Một cuốn sách tôi có thể giới thiệu là Management 3.0

... và bây giờ tôi sẽ xem lại các liên kết mà Thomas đã đăng



Đây là một lời khuyên tồi, cho rằng ai đó làm điều gì đó mà ông chủ của họ không yêu cầu họ làm, hầu hết các ông chủ đều cau mày khi mọi người làm những việc mà họ không được yêu cầu.
Giáo sư lập trình

Tôi đã trả lời câu hỏi này 5 năm trước, khi tôi là một nhà phát triển. Bây giờ trở lại với nó, tôi có thể đọc nó từ góc độ của một người quản lý. @Bonner - bạn nói đúng. có những người quản lý khác nhau với phong cách khác nhau ngoài kia. Một số người sẽ nhăn mặt với bạn nếu bạn làm điều gì đó mà bạn không được yêu cầu làm. Trong trường hợp đó, lời khuyên của tôi cho bạn là chạy trốn khỏi người quản lý đó. Kể từ khi tôi trở thành người dẫn đầu, mọi thứ tôi đã làm là dạy các chàng trai của tôi suy nghĩ độc lập và khiến tôi có thể thay thế. Tôi yêu cầu mỗi người cân bằng giữa trọng tâm hẹp của (các) nhiệm vụ của riêng mình nhưng cũng nhìn về phía trước và xem bức tranh rộng hơn.
DXM

5

Cá nhân tôi không muốn rời khỏi vị trí hiện tại của mình vào lúc này, nhưng tùy thuộc vào vị trí của chúng tôi trong chu kỳ phát hành, tôi dành từ 10% đến gần 100% thời gian cho các nhiệm vụ khác ngoài mã hóa. Nếu bạn kiên nhẫn và quan sát, có rất nhiều cơ hội bạn có thể làm để làm một việc gì đó ngoài việc "chỉ viết mã" ở vị trí hiện tại của bạn. Ví dụ:

  • Tình nguyện để cố vấn một thành viên nhóm mới.
  • Trở thành một chuyên gia về các công cụ, quy trình hoặc công nghệ mới mà công ty đang xem xét áp dụng.
  • Tình nguyện cho các ủy ban đa chức năng.
  • Nói lên ý tưởng bạn có.
  • Mời bạn thiết kế các cuộc họp cho các tính năng sắp tới.

Hãy để người quản lý của bạn biết bạn quan tâm đến những loại cơ hội này và giả sử bạn đang làm tốt với trách nhiệm hiện tại của mình, anh ấy sẽ điều khiển các cơ hội về phía bạn khi chúng xuất hiện. Sáng kiến ​​tính rất nhiều. Hầu hết các nhà quản lý ít nhất sẽ cho phép bạn quan sát ngay cả khi họ không nghĩ rằng bạn đủ điều kiện vào lúc này.


4

Nếu bạn muốn chuyển sang vai trò quản lý dự án thì việc tham gia các lớp học ban đêm và làm việc với MBA của bạn hoàn toàn không gây hại gì.

Một lựa chọn khác là xem xét chứng chỉ của Cơ quan quản lý dự án PMBOK . Nhiều nơi sẽ không xem xét bạn trừ khi bạn có một vài năm kinh nghiệm lãnh đạo thực tế hoặc một trong hai mục được liệt kê ở trên.

PMBOK là một bài kiểm tra cực kỳ khó khăn và đòi hỏi rất nhiều nghiên cứu để vượt qua nó. Tôi cũng nghĩ rằng họ có yêu cầu về quản lý dự án và kinh nghiệm lãnh đạo thực tế chỉ để đủ điều kiện tham gia bài kiểm tra.


3
Có thể đó chỉ là tôi, nhưng tôi sẽ hướng tới bằng cấp quản lý kỹ thuật phần mềm hoặc bằng cấp quản lý kỹ thuật, đặc biệt nếu bạn muốn đi vào quản lý kỹ thuật hoặc lãnh đạo. Tôi đã thấy các kỹ sư có bằng MBA và được đưa vào lĩnh vực kinh doanh của một chương trình phần mềm, chứ không thực sự quản lý hay lãnh đạo các kỹ sư.
Thomas Owens

@ThomasOwens, đó là một lưu ý tốt. Tôi luôn do dự để lấy bằng MBA vì tôi không chắc liệu điều đó có dịch sang hầu hết các địa điểm kỹ thuật hay không.
slandau

Kỳ thi PMP không quá khó.
Morons

@Morons Tôi đang nói về những gì một vài PM nói với tôi về trải nghiệm của họ, tôi không bao giờ tự mình lấy nó. Nhưng bây giờ tôi nghĩ về nó, hai người này không sáng sủa lắm.
maple_shaft

2

Nghe có vẻ như tôi có thể muốn làm việc với Quản lý dự án. Một số lượng lớn các vị trí PM trong phát triển phần mềm cũng đòi hỏi kinh nghiệm mã hóa.

Tôi sẽ tìm kiếm những vị trí mà bạn có thể phát triển trong các trách nhiệm sẽ mang lại cho bạn công việc quản lý / lãnh đạo mà bạn mong muốn. Di chuyển lên thang, có thể trông khác nhau dựa trên cách mọi thứ hoạt động ở nơi bạn đang làm việc. Nhưng ngay cả với số lượng kinh nghiệm mã hóa nhỏ hơn, các vị trí PM vẫn có sẵn nếu bạn có bất kỳ kinh nghiệm lãnh đạo, quản lý.


Điều này đã được nêu trong câu hỏi ban đầu: "... loại điều hoặc cơ hội nào tôi nên tìm kiếm sẽ giúp tôi phát triển sự nghiệp của mình sang vai trò quản lý hơn, thay vì vai trò mã hóa ...". @slandau đang tìm kiếm lời khuyên về cách làm điều này.
Thomas Owens

1
Vâng tôi đồng ý. Bạn có bất cứ lời khuyên làm thế nào tôi sẽ bắt đầu làm việc với nó?
slandau

Vâng, tôi vô tình nhấn nút đăng bài trước khi tôi dự định.
Đ ..

@D .., tôi có một số kinh nghiệm lãnh đạo nhưng tất cả đều nằm trong các dự án và dự án phụ mà tôi đã học hồi đại học ... không chắc là đủ chưa. Là nó?
slandau

Rất có thể là không, bạn muốn hướng tới bất kỳ kinh nghiệm làm việc chuyên nghiệp nào mang lại cho bạn điều đó. Bạn có thể thấy dễ dàng hơn để làm việc đối với vai trò nhà phát triển cao cấp ở một số nơi. Tôi sẽ để mắt đến các vị trí mở làm những gì bạn muốn, xem xét các yêu cầu và tận dụng mọi cơ hội có thể để có được những vị trí phổ biến nhất. Hầu hết những nơi tôi đã làm việc đều nhỏ, và cho phép tôi bước lên gọn gàng lên cấp độ tiếp theo mà không cần nỗ lực nhiều. Nhìn vào công việc hiện tại của bạn ... bạn có thể di chuyển lên đó không? Có lẽ bạn có một con đường xác định từ nơi bạn đang ở hiện tại mà bạn có thể tận 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.