iOS Dev – Huy Lê chia sẻ về nghề nghiệp và con đường phát triển bản thân

Thông tin về người chia sẻ:

Anh Lê Minh Nhật Huy,
Role: iOS Developer (viết application cho iOS bằng Swift)
Profile: www.linkedin.com/in/ihuyle

  • Học ở: ĐH Khoa học tự nhiên
  • Ngành: Chọn Hệ thống thông tin ( Database, Data Mining, Information Retrieval, etc ) vì **không thích CODE :frowning: ** -> Rất tiếc sau khi ra trường đã trở thành 1 “coder.programmer.developer” :smiley:
  • Bằng đại học: Trung Bình

 

huyle

 

——-
[Huy chia sẻ về đặt mục tiêu làm developer từ khi còn ở đại học]

  • Trước khi thi đại học, nghĩ là mình nên học ngành gì liên quan đến máy tính vì chơi game từ nhỏ đến lớn.
  • Năm 1:
    • Không có đam mê. Chỉ chơi games, tải torrent, xem phim.
    • Nghĩ về đam mê, không biết có nên học FPT Arena về Multimedia hay không.
    • Nghĩ là mình thích nghệ thuật.
    • Không đến trường thường xuyên, mình ở nhà ngủ vì đi học quá xa (Thủ Đức), mà tiết đầu tiên là 7g15.
    • Rớt môn lập trình hướng đối tượng. Điểm các môn khác sàn sàn trên 5. Rớt toàn bộ các môn toán (giải tích, rời rạc)
    • Đăng ký học CNTT bằng tiếng Pháp
  • Năm 2:
    • Không có đam mê gì rõ rệt. Ăn nhậu và đi chơi với bạn bè.
    • Vẫn còn rớt 4 môn. Đam mê cũng không có. Bắt đầu thấy lo lo khi nào mới ra được trường :D.
    • Vẫn chả biết sau này sẽ làm gì.
    • Rời khỏi lớp Pháp để chú tâm vào tiếng Anh (lúc này cả tiếng Pháp và tiếng Anh trình độ đều cùi bắp, không biết đọc lẫn không biết viết)
    • Học các môn ngành Hệ thống thông tin vì nghĩ là mình không có năng khiếu lập trình. Có vẻ đầu óc mình làm Business hay Hệ thống Database có vẻ ngon hơn, dễ dàng hơn.
  • Năm 3:
    • Mình nghĩ là cần làm gì đó và tìm con đường cho riêng mình.
    • Mình viết 1 phần mềm cho cửa hàng bán cafe (cực kì cùi bắp) -> bắt đầu nghĩ là mình có khả năng lập trình :smiley:
    • Trả nợ được 2 môn.
    • Đi phỏng vấn vào cuối năm 3, muốn đi làm -> Rớt toàn bộ (không giải được bài toán cơ bản FizzBuzz).
  • Năm 4:
    • Nghĩ là mình có khả năng lập trình.
    • Tự học lập trình iOS, cài hackintos vào laptop, viết vần mềm báo thức đầu tiên (cùi bắp).
    • Được nhận vào 1 cty Nhật trước khi ra trường 4 tháng với vị trí là Lập trình iOS.
    • Bắt đầu viết phần mềm đầu tiên.
    • Niềm đam mê bắt đầu từ đây.

Niềm đam mê tăng dần qua năm tháng, khi mình dần nhận ra những điều mình thích, và làm hết mình với nó.

và khi đi làm …

Xác định rõ mục tiêu
rồi quyết tâm thực hiện cho bằng được. Điều đó cần sự kiên trì trong một thời gian dài. Ví dụ mục tiêu trước đây của mình là:

  • Nếu ai muốn tuyển iOS Developer, mình sẽ là lựa chọn đầu tiên.
  • Sử dụng tiếng Anh thành thạo.
  • Làm việc với những developer hàng đầu thế giới.

Sau đó, mình rã mục tiêu ra:

  • Nếu ai muốn tuyển iOS Developer, mình sẽ là lựa chọn đầu tiên:
    • Master iOS Development
    • Master Objective-C / Swift
    • Master applying design pattern / best practices for iOS development
  • Sử dụng tiếng Anh thành thạo:
    • Có thể trả lời, đặt câu hỏi, comment nhanh chóng.
    • Hiểu những video / postcast, presentation của tụi developer trên youtube và cộng đồng iOS.
    • Present iOS topic bằng tiếng Anh.
  • Làm việc với những developer hàng đầu thế giới.
    • Nói chuyện, thảo luận trên stackoverflow.
    • Follow twitter để bắt kịp xu hướng, cập nhật thông tin của họ và cộng đồng.
    • Đọc blog của những developer giỏi.
    • Đặt câu hỏi, raise issue trên Github.

Đối với mình, không có thành công nào có thể đến 1 cách dễ dàng, thành công sẽ đánh đổi bằng mồ hôi và công sức.

——-
[Huy chia sẻ về làm iOS freelancer]

Mình đã từng làm freelancer. Và đối với mình, mình hoàn toàn không thích công việc đó. Mình nhận công việc freelance vì muốn kiếm thêm tiền. Nhưng sau đó mình nhận ra làm freelance vào thời điểm này là đánh đổi thời gian và tiền.

Mình làm việc ở cty 8h ( thông thường từ 9 – 18h ), sau đó cố lắm làm freelance thêm 2 – 4h nữa là hết max ( tính cả thời gian ăn uống tắm rửa nói chuyện gia đình bạn gái linh tinh nữa là tới 23h ). Sáng thức dậy với tâm trạng mệt mỏi và cũng không tập trung nổi 8h ở cty.

Thay đó, mình tập trung làm việc ( + học + đọc sách + đọc tài liệu ) ở công ty trong 8h. Khi về nhà, mình dành thời gian đó để đi chơi với bạn gái, đọc sách tiếng anh, blog, twitter, nói chuyện cùng gia đình.

Ở case trước, mỗi giờ làm việc của mình bao gồm 8h ở cty + 4h freelancer là 12h với mức lương khoảng 3$ – 5$ / 1 giờ -> no life

Ở case thứ 2, trình độ mình bắt đầu tăng lên nhanh chóng, cty bắt đầu trả nhiều tiền hơn cho 8h mình làm việc. Mỗi giờ mình làm khoảng 10$, và mình vẫn có thời gian cho gia đình, bạn bè, người yêu, cuộc sống, và có thời gian để học thêm nhiều nữa -> mức lương và chất lượng cuộc sống mình ngày càng tăng, và thời gian làm việc của mình vẫn là 8h mỗi ngày.

Mình không làm freelancer nhiều nên chỉ nói ra case của mình, mọi người tham khảo rồi tự mình quyết định cho bản thân thôi. Mình không khẳng định freelancer tốt hay không, nhưng đối với mình, thời điểm hiện tại thì freelance chính là bán thời gian để lấy tiền bạc ( thời gian != chất xám ) – đó là case của mình thôi. Vì sao lại nói là bán thời gian lấy tiền bạc, freelance nó có những tính chất của nó ví dụ như:

  • Dự án ngắn hạn, tính năng đơn giản.
  • Chú trọng nhiều vào kết quả (giao diện, tính năng, etc) – mà không để ý nhiều về code quality, maintain, architect, testing, etc.
  • Nhiều khả năng làm việc 1 mình ( không có bạn đồng hành, không có code review, không có technical discussion, feedback, etc).
  • Thời gian bị bó buộc (deadline) -> thay vì nghĩ về Product, mình luôn nghĩ về thời hạn phải hoàn thành.

Những vấn đề trên làm hạn chế khả năng phát triển của mình, không đủ để mình học hỏi thêm và cũng cố kiến thức, nên mình không muốn làm freelancer.

——–
[Huy chia sẻ về làm Full-Stack Developer]

Mình không phải là full stack developer. Mình chỉ học duy nhất Objective-C, Swift và iOS SDK. Mọi thứ mình học thêm như Regex, Design Pattern, Architecture, etc. đều dùng để bổ trợ cho Developing iOS App. Nên mình cũng không có kinh nghiệm về full stack.

Nhưng theo kinh nghiệm của mình, khi kiến thức tổng quát về lập trình ( Design, Architect, MindSet, OOP, FP, Refactoring, Naming, etc.) tăng lên thì việc đọc và tìm hiểu kiến thức mới trở nên dễ dàng hơn.

Vì vậy, thay vì đi theo chiều ngang, mình sẽ đi theo chiều dọc trước. Mình tập trung hoàn toàn vào Swift và iOS để học PROGRAMMING.

Với mình, nếu như mình là 1 người nghệ sĩ, mình sẽ học 1 nhạc cụ trước, vd: Piano. Dùng Piano để học về Nhạc Lý, Âm Nhạc, Hòa Âm, Cảm Âm, Phối Khí, etc. Khi mình hoàn toàn master được những vấn đề âm nhạc cơ bản đó, mình mới nghĩ đến việc tìm thêm niềm vui ở những nhạc cụ khác.

./.

(Ghi chú: Bài viết được chọn lọc từ những chia sẻ của Huy Lê đến các bạn lập trình viên khác, và đã được bạn Huy Lê đồng ý để đăng lại ở JobSeekers.vn
Nếu anh chị em muốn chia sẻ kinh nghiệm của mình với mọi người, vui lòng gửi email về hello@jobseekers.vn
Cảm ơn!)

 

 

Blog

Казино 7K Casino – техническая поддержка игроков круглосуточно 24/7

Религиозные лидеры и организации могут играть важную роль в миротворческих инициативах, способствуя разрешению конфликтов и укреплению мира. Их влияние может помочь создать атмосферу доверия и...

Read more

Jogo online Betpark cassino | jogar em cassino

Os jogadores também podem ver as regras associadas aos vários jogos neste site do casino. Porém, devido ao design do site e à qualidade das promoções, apenas uma pequena quantidade de jogadores...

Read more