10 Steps to become a Senior Software Engineer

Nội dung

  • Giới thiệu
  • 10 Steps to become a Senior Software Engineer
  • Kết Luận

Giới thiệu

32f7615.jpg

Chắc hẳn cụm từ "Senior Software Engineer" khá quen thuộc với mỗi ai trong chúng ta. Từ khi chúng ta bắt đầu học việc, dần quen việc hơn và rồi trở thành code "Cứng" chuyên xử lý các phần công việc khó. Có thể nói rằng trong cuộc đời sự nghiệp của các Software engineers thì "Senior Software Engineer" là một trong những nấc thang tất cả mọi người đều muốn đạt được.

Vậy làm thế nào để trở thành một "Senior Software Engineer". Bài viết dưới đây sẽ đưa ra 10 steps giúp bạn trở thành một kỹ sư phần mềm cao cấp.

Nào chúng ta cùng tìm hiểu nhé!

Step 0: Choose your path and stick to it!

Điều này thực sự quan trọng, nhất là khi bạn bắt đầu: bạn cần xác định con đường đi của mình và quyết tâm theo đuổi nó bằng cách:

  • Chọn mảng chuyên ngành của bạn. Ví dụ: Web development hoặc Mobile development

  • Chọn công nghệ trong mảng chuyên ngành đó. Ví dụ: Nếu bạn chọn web development bạn sẽ chọn Ruby on Rails, Python and Django, JavaScript...Nếu bạn chọn mobile, bạn sẽ chọn giữa iOS hoặc Android...

Bây giờ bạn đã chọn được chuyên ngành của mình, bạn sẽ phải học rất nhiều về nó. Bạn sẽ mất vài năm để đọc tất cả những cuốn sách, thực hành về nó.Hãy bám lấy nó và master nó.

Step 1. Lay the foundations

Bạn chọn đọc các cuốn sách khởi đầu về lập trình. Điều này sẽ giúp bạn có một cái nhìn tổng quan, hiểu được những nguyên tắc cơ bản.

Đọc cuốn sách The Pragmatic Programmer Đó là một điểm khởi đầu tốt đẹp trên con đường làm chủ phần mềm của bạn.

Step 2. Master your programming language

Bạn sẽ sử dụng nhiều ngôn ngữ hàng ngày thùy thuộc vào công nghệ bạn lựa chọn. Mặc dù, phần lớn các mã của bạn sẽ được viết bằng một ngôn ngữ.

Ví dụ: một Ruby on Rails phát triển sử dụng của Ruby chủ yếu. Một nhà phát triển AngularJS sử dụng JavaScript hầu hết thời gian.

Xác định ngôn ngữ và làm chủ nó là rất quan trọng cho sự nghiệp của bạn. Bạn sẽ được sử dụng ngôn ngữ này mỗi ngày. Chọn ngôn ngữ của bạn và đọc một cuốn sách trước về nó.

Ví dụ:

Step 3. Learn your framework

Với rất nhiều ngôn ngữ thì framework là một phần không thể thiếu và cũng giúp bạn làm quen với ngôn ngữ đó nhanh hơn.

Chọn một và học nó:

Step 4. Become a master of your text editor / IDE

IDE là một phần rất quan trọng vì đó là công cụ để bạn lập trình. Vì thế, một lần nữa, chọn một, master nó và bám lấy nó.

Ví dụ bạn chọn Xcode, bám lấy nó và master nó.

Step 5. Use your Version Control System like a pro

Bạn có thể sử dụng một số các Source Control như Git, SVN...

Tôi khuyên bạn nên sử dụng Git. Đây là nguồn tôi thích: Pro git – book trực tuyến miễn phí với một phân tích đầy đủ về mọi khía cạnh của Git

Step 6. Commit to doing Test Driven Development

Chọn cuốn sách cụ thể để thực hành code và test hàng ngày.

Step 7. Refactor as a habit

Code của bạn sẽ phát triển phức tạp hơn khi bạn thêm nhiều chức năng. Để quản lý code, bạn cần cấu trúc lại. Vì nếu bạn không cấu trúc lại sớm, sẽ đến lúc có một thay đổi nhỏ lại là khó khăn với bạn.

Đây là cuốn sách tốt về làm thế nào để làm điều đó: Refactoring: Improving the Design of Existing Code

Step 8. Learn software architecture

Kiến trúc phần mềm rất quan trọng, nó giống như bản vẽ để bên thi công hiểu về ngôi nhà bạn muốn xây.

Tùy thuộc vào kĩ thuật bạn chọn, tìm một cuốn sách tốt về kiến trúc và đọc nó.

Step 9. Unleash the power of the command line

Các dòng lệnh bạn có thể cảm thấy đáng sợ lúc đầu. Mặc dù, ngay sau khi bạn tìm hiểu làm thế nào để sử dụng nó, bạn sẽ thấy nó rất hiệu quả hơn trong việc thực hiện các nhiệm vụ cơ bản. Điều đó sẽ giúp bạn tiết kiệm khá nhiều thời gian trong quá trình làm việc.

Step 10. Code code code!

Cũng giống như chơi thể thao vậy, mỗi ngày bạn cần thực hành những gì bạn học để kiến thức của bạn sẽ lưu trữ lâu hơn.

Bạn không thể giỏi ngoại ngữ nếu bạn không nghe nói hằng ngày.

Kết Luận

Việc trở thành kỹ sư phần mềm cao cấp thật không hề đơn giản. Nó cần rất nhiều thời gian, commit đạt được.

Những người khác nhau học ở tốc độ khác nhau, nhưng trung bình, phải mất khoảng 10 năm để trở thành một kĩ sư phần mềm cấp cao. Đó là một sự đầu tư lớn về thời gian cho một điều lớn lao.

Nguồn:

http://howtoprogrambetter.com/10-steps-to-become-a-senior-software-engineer/