3 điều không ổn của công ty cũ (phần 2)

Manh

November 22, 2017

Bài viết

2. Code Review

Không nhiều công ty có quy trình Code Review, đặc biệt là các công ty outsource. Họ thường bỏ qua review để cam kết thời gian hoàn thành ngắn nhất và nó cũng dường như là “thừa” khi sản phẩm đã làm hài lòng khách hàng, ít nhất là cho tới thời điểm test. Còn đối với công ty làm sản phẩm riêng, thiếu đi Code Review không gây hại nhiều ở những giai đoạn đầu mà là code sẽ có nhiều vấn đề về sau.

Theo mình Code Review là một quy trình cần thiết với những lợi ích sau:

– Optimization: tối ưu. Số lượng các tối ưu vi mô (micro optimization) đủ lớn thì sản phẩm của bạn sẽ thay đổi rõ rệt hoặc dẫn tới các tối ưu vĩ mô (macro optimization). Các tối ưu bao gồm dòng code, một hàm, một object cho đến module, service, …

– Bug discovery: nhiều lỗi trực tiếp hoặc những code có khả năng gây lỗi sẽ được chỉ ra bởi những lập trình viên có kinh nghiệm. Áp dụng luật Murphy, những dòng code này cần được thay thế.

– Better API design: quá trình Code Review bao gồm đánh giá lại API mà bạn đã viết. Việc có một API đầy đủ và ổn định là rất cần thiết để tránh phải thay đổi tất cả các code dùng API về sau. API cũng nên được thiết kế để người sử dụng (lập trình viên) dễ hiểu, hạn chế các câu lệnh phức tạp hoặc sử dụng sai API.

– Consistency: một dự án nên có những quy tắc lập trình thống nhất (cách đặt tên, class template,…). Việc review sẽ chỉ ra những lỗi quy tắc để các lập trình viên làm việc dễ dàng hơn cùng nhau.

Có một nguyên tắc khác mình hiểu ra trong lập trình đó là: “You can’t write the code all day”. Lập trình viên không thể viết code cả ngày. Code Review càng nên được đưa vào những khoảng thời gian lập trình viên không viết code để tránh sao nhãng vào việc khác. Mình hoàn toàn ủng hộ ý tưởng công ty là nơi để cá nhân tập trung làm việc. Nhân viên của bạn gặp stress không có nghĩa rằng bạn phải cho cả công ty giải trí trong giờ làm mà có thể rằng bạn đã cho họ làm những công việc tẻ nhạt trong thời gian dài. Để 8 tiếng làm việc thực sự hiệu quả, hãy thay đổi điều gì đó và Code Review cũng là một trong những lựa chọn. Thật sự rằng, có quá nhiều công ty để cho nhân viên tùy hứng làm việc miễn là hoàn thành thứ họ được giao. Một quy trình làm việc đồng bộ sẽ biến công việc trở thành thứ có thể kiểm soát và công bằng cho mỗi cá nhân khi biết rằng mọi người sẽ làm gì.

3. Công ty của bạn thật là chán

Là một nhân viên mới tham gia vào công ty, mình sẽ thấy thật là chán khi không có gì ngoài một bản hợp đồng toàn những trách nhiệm và ràng buộc rất chung chung (hầu hết mọi loại hợp đồng lao động đều giống nhau chỉ thay đổi tên công ty và ngày tháng). Tôi không hề biết công ty này có định hướng như thế nào và hoài bão của họ muốn chinh phục những điều gì? Bạn đã nhầm khi cho rằng chỉ có những nhà lãnh đạo mới cần biết điều đó? Bạn nghĩ rằng những điều có vẻ “hoa mỹ” này đã có trên website của công ty được viết bởi vài nhân viên hoặc một công ty làm website. Bạn chắc rằng những lời giới thiệu này đúng với công ty bạn hoặc những gì công ty bạn đang theo đuổi? Nó chỉ là một lời copy mà thôi.

Công ty của bạn không thể hiện gì với một người mới ngoài những mong muốn đã đi sâu vào tiềm thức những người quản lý rằng chúng tôi muốn tìm một nhân viên xuất sắc và làm việc với chúng tôi lâu dài. Bạn đã sai lầm khi để tất cả nhân viên nghĩ rằng đây là một nơi cho mình một công việc và mình cần cố gắng để ở lại đây giữ công việc ổn định. Đây không phải là điều một số nhân viên sẽ đòi hỏi hay quan tâm, càng không phải một vấn đề chỉ cá nhân mình quan tâm. Đó là vấn đề cần thiết để tạo ra một công ty thu hút sức làm việc ngoài mức tiền lương và các công việc phải làm. Và điều tất yếu là một ngày nhân viên sẽ yêu cầu tăng lương hoặc chuyển sang một đơn vị khác có mức đãi ngộ cao hoặc là một công ty khác thật sự có sức hút.

Mình sẽ không đi sâu hơn vào vấn đề này bởi mỗi công ty sẽ có những cách khác nhau để thể hiện hình dung về một tập thể mà nhân viên sẽ góp phần tạo thành. Một tập đoàn lớn sẽ khác với một công ty nhỏ. Nhưng nhìn chung thì công ty chính là phản ánh của nhà lãnh đạo. Bạn cần nhân viên của mình làm việc và trả công, nhân viên sẽ so sánh công việc và mức lương. Những điều nhân viên thể hiện ra đều có thể là vỏ bọc cho mục tiêu làm việc thực sự khi bạn cố tạo ra văn hóa làm công ty một cách hời hợt. Nhân viên sẽ biết cách nói những điều mà bạn muốn được nghe và bạn cũng không quan tâm nhiều tới nó để có thể nhận ra.

Một số điều sẽ giúp nhân viên hình dung tốt hơn về những gì bạn đang xây dựng cho tập thể có thể là: giới thiệu về lịch sử phát triển, các sản phẩm đã hoàn thành, nhân viên tiêu biểu, …

Comments

comments

Related Posts

3 điều không ổn của công ty cũ (phần 1)

Manh

November 4, 2017

Bài viết

Bài viết này nhằm mục đích chỉ trích những vấn đề mà bản thân mình cảm thấy không ổn khi làm việc trong công ty công nghệ. Công ty cũ ở đây có thể là một, hoặc một vài công ty mà mình đã từng làm việc, ngắn hạn hay dài hạn. Tuy nhiên bài […]

Read More

Tiếp tục viết blog

Manh

November 2, 2017

Bài viết

Chào các bạn đang xem trang DevNT.org. Đã gần 1 năm qua mình chưa viết thêm bài mới nào cho blog. Quãng thời gian vừa rồi có sự chuyển đổi về hướng đi trong sự nghiệp lập trình của mình đó là tập trung hơn cho lập trình game thay vì lập trình ứng dụng […]

Read More