2009-08-23 26 views
39

Giống như nhiều người ở đây, tôi là một nhóm phát triển một người. Tôi chịu trách nhiệm cho tất cả mọi thứ từ việc thu thập các yêu cầu dự án, thiết kế khái niệm-màn hình, lập kế hoạch và phát triển cơ sở dữ liệu, và viết tất cả các mã.Trở thành đội ngũ một người hiệu quả nhất

Là một nhóm một người tốt, nhưng có âm tính của nó. Tôi không có khả năng nhanh chóng tham khảo ý kiến ​​với các nhà phát triển khác, tôi hiếm khi nhận được một bộ thứ hai của mắt cho mã của tôi, và tôi chắc chắn các bạn có thể đưa ra nhiều tiêu cực khác nữa.

Để tận dụng tối đa thời gian của mình và cam kết hiệu quả nhất cho công việc của mình, tôi có thể thực hiện những lời khuyên hoặc thực hành nào trong thói quen hàng ngày để trở thành nhóm người tốt nhất có thể?

+0

Chỉ cần tự hỏi: Điều gì xảy ra khi bạn đi nghỉ? Làm cách nào để doanh nghiệp xử lý việc không có nhà phát triển trong một khoảng thời gian dài? – Andrew

+0

@Andrew Tôi thực sự chỉ có 1 kỳ nghỉ trong tất cả các năm tôi đã làm việc. Trong quá khứ, tôi chỉ đơn giản là tiền mặt trong những ngày nghỉ của tôi để trả thêm tiền. Tôi vừa mới nghỉ tuần đầu tiên thực sự khoảng 2 tuần trước. Trong "thời gian nghỉ" của tôi, tôi vẫn làm việc ~ 30 phút mỗi ngày để giữ cho mọi thứ chuyển động. – Sampson

Trả lời

41
  • Danh sách hàng ngày về những gì tôi sẽ làm.

  • Xóa càng nhiều phiền nhiễu càng tốt để tập trung vào công việc. Tắt email, tắt IM, v.v. ngay cả khi trong một khoảng thời gian nhất định và sau đó trong thời gian ngắt kiểm tra xem chúng.

  • Dành thời gian tìm hiểu về các kỹ thuật mã hóa, công cụ và sự khôn ngoan về lập trình khác. Điều này tôi đã tìm thấy là rất quan trọng cho sự phát triển của tôi. Thật dễ dàng để chỉ viết mã và cảm thấy hiệu quả. Điều gì về những gì có thể được nếu bạn chỉ có một số kiến ​​thức/vũ khí dưới vành đai của bạn để nổ ra rằng phụ tùng tiếp theo. Tôi biết điều này thực sự có vẻ phản tác dụng nhưng thực sự thì không. Kiến thức/biết tiền thật của chúng ta thế nào. Chúng ta càng biết càng nhiều thì chúng ta có thể đưa ra quyết định tốt hơn về cách làm một việc gì đó và làm nhanh hơn.

  • Nghỉ ngơi và nhận biết cơ thể của bạn. Khi chúng tôi đang mệt mỏi, chúng tôi không nghĩ là tốt và sẽ làm cho hơn sai lầm, trở thành thất vọng hơn dễ dàng, vv ...

  • Học cách sử dụng quy tắc 80/20 để lợi thế của bạn. Tôi không có nghĩa là skimp hoặc là lười biếng. Thông thường, chúng tôi sẽ làm việc theo số của chúng tôi cho 20% khi không cần .

  • Đặt mục tiêu cho chính bạn (hàng ngày, hàng tuần, hai tuần). Đảm bảo rằng các mục tiêu cũng phù hợp với những mục tiêu mà bạn đang mã hóa hoặc bạn có thể tìm thấy bạn đã lãng phí một chút thời gian.

Từ một khía cạnh kỹ thuật xem xét:

  • Hãy xem xét Đơn vị kiểm tra/TDD. Tôi đã tìm thấy trong công việc của riêng tôi rằng điều này thực sự tiết kiệm được thời gian. Phải mất một lúc để có được số bị treo nhưng với bất kỳ thứ gì bạn sẽ trở nên tốt hơn.
  • Chăm sóc mã của bạn. Tái cấu trúc nó (đặc biệt là nếu bạn bắt đầu đơn vị thử nghiệm). Mã của bạn càng tốt là thì càng dễ bảo trì mất ít thời gian hơn. Việc dễ dàng hơn là để hiểu nhanh hơn bạn có thể thay đổi /các tính năng triển khai.
+0

+1 cho việc học và chăm sóc mã của bạn (mặc dù phần còn lại cũng tốt). Tôi đã viết các phần mã bằng cách sử dụng các kiểu phát triển khác nhau (như tôi đã học chúng) và đã tái cấu trúc các kiểu kém hiệu quả/khó hơn để duy trì các kiểu phù hợp với nhau. Làm việc khá tốt. –

+1

Đó là trong danh sách của bạn, nhưng thiết lập một loạt hàng ngày của các mục tiêu nhỏ có thể đạt được bất cứ khi nào có thể làm việc cho tôi được sản xuất và cảm thấy hiệu quả. Vào đầu ngày, tôi chỉ áp dụng quy tắc 80/20 để lên kế hoạch cho những gì tôi nên làm trong ngày. Một điều quan trọng khác là cập nhật công nghệ liên quan nếu không chúng tôi vẫn đang lập trình theo mô hình lắp ráp và mô hình bắt buộc ... – user347594

1
  • Đảm bảo bạn cấu trúc lại sớm và thường xuyên. Điều đó hầu như giống như một bộ mắt thứ hai (ít nhất là đối với tôi).
  • Đừng làm việc nhiều giờ điên rồ (đặc biệt khó khăn nếu bạn làm việc ở nhà). Trên thực tế, làm việc ít hơn giờ thường chứng tỏ hiệu quả hơn khi áp lực phá vỡ/kết thúc sắp xảy ra làm tăng hiệu quả của bạn.
  • Bạn có thể muốn tìm kiếm Parkinson's Law để quản lý công việc/thời gian.
3

Theo nghiên cứu hoạt động, trước tiên, công việc ngắn nhất là trình lập lịch biểu tốt nhất để nhận được nhiều việc nhất.

+0

bất kỳ liên kết nào đến nghiên cứu đã nói? Tôi rất thích điều đó. – LRE

+2

Trong khi không phải là một nghiên cứu, đây là wikipedia: http://en.wikipedia.org/wiki/Shortest_job_next – klabranche

+2

Điểm về quá trình chết đói cần được nhấn mạnh tho! Vì vậy, hãy bắt đầu một ngày với một vài tác vụ ngắn có tác động, nhưng tiếp tục làm việc trên các tác vụ lớn hơn. – jhaukur

2

tôi viết và hội nhập chạy và hệ thống kiểm tra, nhưng không kiểm tra đơn vị, bởi vì tôi đã không cần phải đầu thử nghiệm (pre-tích hợp): Should one test internal implementation, or only test public behaviour?

Một corrolary của Luật Conway là bạn cần phải kiểm tra các giao diện phần mềm nội bộ tách riêng/tích hợp các nhà phát triển, trong khi một "quân đội một người" không cần phải kiểm tra một cách rõ ràng các giao diện nội bộ của mình theo cách này.

11

Tôi đang học cách dành nhiều thời gian hơn để lên kế hoạch cho ngày của mình so với trước đây. Điều này bao gồm lập kế hoạch cho các dự án, viết mã psuedo cho chương trình tôi cần làm. Tôi thấy rằng với tất cả những gián đoạn trong lịch trình của tôi, thật khó cho tôi để bắt đầu một cái gì đó. Có mọi thứ được chia nhỏ thành các nhiệm vụ nhỏ giúp việc bắt đầu dễ dàng hơn sau khi bị gián đoạn.

0

Tôi sử dụng tệp văn bản để thu thập tất cả những gì tôi làm hàng ngày. Mỗi lần tôi gặp vấn đề hoặc có câu hỏi hoặc tìm giải pháp, tôi thêm nó vào tệp của mình. Đó là công nghệ rất thấp nhưng nó cung cấp nhiều thông tin, như "tôi đang dành phần lớn thời gian của mình ở đâu?" hoặc "tôi đã khắc phục vấn đề đó trước đây như thế nào?". Ngoài ra, hãy nhanh chóng cung cấp cho khách hàng danh sách giờ vào cuối chu kỳ thanh toán của bạn.

Tôi cũng sử dụng tệp văn bản khác (mỗi khách hàng) chứa tất cả các mục công việc trên đĩa của tôi, được sắp xếp theo thứ tự ưu tiên và được cập nhật thường xuyên. Nó giúp cả tôi và khách hàng của tôi tập trung vào những gì tôi nên làm việc tiếp theo, vì vậy máy bơm luôn được sơn lót.

Cuối cùng, tôi sẽ chuyển từ các tệp văn bản phẳng sang sử dụng một cái gì đó như FogBugz, nhưng bây giờ tôi không thể đánh bại giá, hoặc tìm kiếm dễ dàng như thế nào, hoặc dễ dàng như thế nào để gửi e-mail.

+0

ToDoList có thể là cách tốt hơn để quản lý các mục công việc của bạn. Bạn có thể muốn kiểm tra xem nó ra. –

+0

Bạn đang nói về ứng dụng được hiển thị tại http://www.codeproject.com/KB/applications/ToDoList2/todolist.png? Điều đó trông giống như một mớ hỗn độn tuyệt đối ... Tôi sẽ thay vì có tệp văn bản phẳng của mình! –

2

Rất nhiều mẹo khác là tốt nhưng chúng đều áp dụng cho nhà phát triển làm việc trong nhóm cũng như nhà phát triển đơn lẻ.

Tôi nghĩ rằng điều khó khăn nhất khi một nhóm người đàn ông giao tiếp hiệu quả với phần còn lại của công ty bạn. Bạn sẽ luôn luôn là một giọng nói lập trình duy nhất trong bất kỳ cuộc họp hoặc thảo luận về cách tốt nhất để xây dựng phần mềm.

Kết quả là tôi khuyên bạn nên cố gắng cải thiện kỹ năng đàm phán và tập trung vào việc cải thiện cách bạn mô tả khái niệm kỹ thuật về mặt người không lập trình có thể hiểu được. Đọc sách như Getting to YesHow to win friends and influence people là một cách hay để bắt đầu.

Khi có nhiều người đồng ý trên quan điểm, điểm nhìn tự động tăng độ tin cậy với những người bạn đang cố gắng thuyết phục. Trong trường hợp không có khả năng này, bạn cần phải làm việc chăm chỉ hơn trong việc chuẩn bị các lập luận của bạn với bằng chứng được nghiên cứu kỹ lưỡng và một cái nhìn cân bằng.

+0

+1: Tôi là một lập trình viên duy nhất và nhận được sếp hoặc đội (một người hầu như luôn luôn thuyết phục người kia) về phía tôi là ưu tiên 1. –

1

Tôi đang ở trong tình trạng tương tự. Đã có rất nhiều lời khuyên tốt ở trên nhưng một điều tôi muốn thêm là tìm thời điểm mã hóa tốt nhất của bạn và đảm bảo bạn đang mã hóa trong thời gian đó. Tôi có một vài giờ vào buổi sáng mà tôi dường như là tốt nhất của tôi cho mã hóa. Tôi cố gắng giữ cho thời gian đó không bị xao lãng. Lập kế hoạch những thứ như cuộc họp, viết tài liệu, kiểm tra (ít nhất là những thứ tẻ nhạt, lặp đi lặp lại), và tất cả những thứ khác cho thời gian kém hiệu quả của bạn. Giữ những giờ mã hóa đó khi bạn có hiệu quả hơn gấp 2 đến 5 lần để viết mã.

Các vấn đề liên quan