Đọc bài phỏng vấn của blog Vinacode với anh Lê Trung, là một developer có nhiều năm kinh nghiệm làm việc với ngôn ngữ lập trình Ruby và framework Ruby on Rails. Anh là người sáng lập ra cộng đồng Ruby Vietnam (http://ruby.org.vn/) và cũng là Organiser của Ruby Vietnam Group meetup. Hiện tại anh đang đảm trách mảng tìm kiếm sản phẩm của ứng dụng Envato Market tại công ty Envato (có trụ sở ở Melbourne, Australia), để nghe anh chia sẻ về:
- Kinh nghiệm học tập làm việc, và những nguồn tài nguyên để nghiên cứu về Ruby/Rails
- Những mặt ưu và nhược điểm của Ruby/Rails so với các ngôn ngữ lập trình khác
- Những thông tin bổ ích về dự án RailsGirls Summer of Code dành cho các bạn nữ
- So sánh về sự khác nhau trong cách suy nghĩ và làm việc giữa lập trình viên Việt Nam và đồng nghiệp Úc
- Tham gia vào các hoạt động sôi nổi của cộng đồng Ruby Vietnam
Chào anh Lê Trung, anh có thể giới thiệu với độc giả blog Vinacode đôi chút về background IT của mình?
Từ hồi còn bé tôi đã rất đam mê giải quyết các vấn đề với máy tính, chủ yếu là vọc máy, cài đặt Windows nhưng tôi không có nhiều thích thú với việc lập trình. Tôi có ấn tượng rất xấu với môn vi tính dạy ngôn ngữ lập trình Pascal ở trường, thầy giáo dạy thì nhám chán, các vấn đề giải quyết cũng chỉ dừng ở mức giải toán, không thực sự mang tính áp dụng. Và trong suốt 4 năm (2003 – 2007) theo học cử nhân Telecommunication tại ĐH Swinburne, Australia thì tôi đã đôi lần va chạm với lập trình nhưng cũng chỉ dừng ở mức cơ bản. Tôi cũng không bao giờ nghĩ mình sẽ trở thành lập trình viên lúc đấy.
Cũng là do số phận đẩy đưa tôi đến với nghiệp lập trình và Ruby. Vào năm cuối đại học, tôi chọn đi thực tập cho một công ty làm về networking tại Melbourne, tại đây tôi có cơ hội được tiếp cận với lập trình ứng dụng Web thông qua ngôn ngữ PHP bấy giờ. Thực sự tôi gặp rất nhiều khó khăn trong suốt chương trình này, nhưng cũng nhờ đó nó giúp tôi nhận ra là mình có năng khiếu về lập trình và đây sẽ là hướng đi của tôi. Thực sự có mấy ai học và đi làm đúng nghề nhỉ?
Sau khi tốt nghiệp, tôi đi làm cho một agency chuyên về retail tại Melbourne. Tại đây tôi có cơ hội được thử nghiệm với nhiều công nghệ và ngôn ngữ. Một trong những khám phá của tôi là Ruby và Rails. Kể từ sau 2009, tôi quyết định bỏ hẳn PHP và chuyển hướng chuyên về Ruby, tôi tích cực tham gia cộng đồng Ruby tại Melbourne và cũng như trên thế giới. Để giúp giải quyết các vấn đề ở công ty tốt hơn, tôi cũng tham gia vào các dự án mã nguồn mở liên quan đến retail, như là Spree Commerce, Rails, Ruby, v.v… Thông qua đó tôi có cơ hội để gặp gỡ, mở rộng mối quan hệ, tìm kiếm việc làm. Hiện tại tôi đảm trách mảng tìm kiếm sản phẩm của ứng dụng Envato Market tại công ty Envato, trụ sở Melbourne.
Lê Trung trong một chuyến dã ngoại tại Bontanical Garden, Sydney
Là người có kinh nghiệm làm
việc với ngôn ngữ Ruby và framework Ruby on Rails từ năm 2008 đến nay.
Anh có thể so sánh một số mặt ưu và nhược điểm của Ruby với các ngôn ngữ
lập trình khác?Tôi không dám chắc là mình có thể đưa ra một nhận xét khách quan, bởi vậy mong các bạn độc giả xem tất cả những đánh giá sau đây chỉ là phản ánh ý kiến chủ quan của cá nhân tôi.
Đầu tiên nếu so sánh ngôn ngữ Ruby với các ngôn ngữ scripting khác trên thị trường như PHP hay Python thì Ruby có rất nhiều điểm tương đồng về mặt thiết kế, thứ nhất là ngôn ngữ hướng đối tượng, thứ hai là có hệ thống sinh thái tốt với nhiều gói thư viện bổ sung chức năng, và cuối cùng là đều được các công ty lớn trên thế giới sử dụng.
Thế thì ưu điểm của Ruby nằm ở đâu? Về mặt cá nhân, tôi thích cú pháp của Ruby hơn các ngôn ngữ khác. Cú pháp của Ruby khá súc tích và dễ học so với PHP chẳng hạn. Một điểm khác đáng chú ý là Ruby có đi kèm thư viện minitest giúp cho việc test các ứng dụng tiện lợi và dễ dàng hơn rất nhiều. Cũng chính nhờ Ruby mà trào lưu TDD (Test Driven Development) nôm na là viết test trước trở nên rất phổ biến trong giới Ruby. Chính nhờ thế nên các ứng dụng trên nền tảng Ruby rất ổn định và tránh được rất nhiều regression. Không như các ngôn ngữ khác như PHP, đa số là không có thói quen viết test hay TDD là mấy.
Sẽ là rất thiếu sót nếu không nhắc đến một ưu điểm khác của Ruby, đó là web framework Ruby on Rails hay viết tắt là Rails. Rails thay đổi cuộc chơi của trào lưu ứng dụng nền tảng web, chưa bao giờ tôi thấy có một framework nào giúp người viết thực hiện được các ý tưởng nhanh và dễ dàng đến thế. Rails trở thành một hiện tượng trong giới làm startup, được ví như hipster trong giới lập trình. Các startup thành công với Rails thì không đếm xuể, ví dụ phiên bản cũ của Twitter, sản phẩm Basecamp, trang YellowPages hay trang Envato Marketplace
Ưu điểm cuối cùng của Ruby là ở sức mạnh cộng đồng. Tôi tham gia nhiều cộng đồng lập trình ở đây từ PHP, Java, .Net nhưng thực sự chưa có cộng đồng nào tốt và chất như cộng đồng Ruby trên thế giới. Hầu hết mọi người trong cộng đồng đều rất tốt và luôn sẵn sàng nâng đỡ các thành viên khác, thêm vào đó cộng đồng Ruby cũng tham gia vào các hoạt động xã hội giúp cải thiện một số vấn đề xã hội đối với nghiệp lập trình, ví dụ tỉ lệ chênh lệch nữ giới trong ngành và quyền bình đẳng của phụ nữ trong thời đại số hoá, v.v…
Nói nhiều về ưu điểm rồi, tôi cũng chia sẻ luôn nhược điểm của Ruby. Nhược điểm thứ nhất đó là tốc độ, vì là một ngôn ngữ interpreter nên Ruby không thể nào đạt được tốc độ nhanh bằng các ngôn ngữ biên dịch như C hay Java. Nhưng nếu so sánh công bằng giữa các ngôn ngữ khác đồng loại như Python, PHP thì tốc độ của Ruby không thua, thậm chí với các bản cải tiến gần đây thì Ruby còn nhanh hơn cả Python 3.
Có nhiều lập trình viên không muốn chuyển sang Ruby vì cho rằng Ruby và Rails không thể scale để đáp ứng các ứng dụng đòi hỏi, điều đó theo tôi hoàn toàn không đúng trong thời điểm hiện tại, với rất nhiều cải tiến đáng kể thì Ruby/Ruby on Rails không có vấn đề scale. Tôi xin lấy ví dụ ứng dụng marketplace của công ty Envato, ứng dụng này vẫn chạy trên Rails nhưng có thể chịu tải được trung bình 70 – 90 triệu hit/tuần mà không xảy ra bất kì vấn đề gì cho đội ngũ devops.
Cũng như bất cứ ngôn ngữ lập trình nào, chúng đều có lúc cực thịnh rồi suy tàn, theo tôi thì ngôn ngữ Ruby và framework Rails đang ở trước cái dốc đi xuống đấy. Tôi thấy các yêu cầu lớn trên thị trường làm ứng dụng Web là nằm ở phần frontend và đây là phân khúc dành cho JavaScript và các framework liên quan như ReactJS, AngularJS. Nhưng tôi không nghĩ Rails hay Ruby sẽ hoàn toàn bị thay thế trong thời gian gần, vì Ruby là ngôn ngữ lý tưởng để thiết kế backend và tôi được biết Rails 5 sẽ hướng vào ứng dụng HTTP API và Lotus Framework tập trung vào nền tảng microservice nên cũng không thể nói trước được nếu thị trường có đổi hướng.
Nếu bạn nào đang phân vân có nên chuyển qua làm Ruby hay không thì câu trả lời của mình là các bạn cứ vững tin, vì dù cứ cho là Ruby sẽ chết trong 10 năm nữa thì các công ty lớn sẽ phải outsource các dự án legacy về nhà và đây là tiềm năng cho các công ty phần mềm ở nhà nắm bắt để kiếm tiền.
Nếu một bạn trẻ muốn tìm hiểu về Ruby/Rails thì họ nên bắt đầu từ đâu? Ngoài framework Rails thì ngôn ngữ Ruby còn có framework nào có chất lượng?
- Cách tốt nhất để học Ruby là đọc các tài liệu trên mạng. Tôi thích trang rubymonk.com vì trang này rất trực quan với nhiều bài tập từ vỡ lòng đến nâng cao cho Ruby. Để nâng cao thì bạn nên đọc thêm cuốn Clean Ruby của Jim Gay hay cuốn Practical Object-Oriented Design in Ruby của Sandi Metz. Xem thêm screencast trên trang RubyTapas
- Còn về Rails thì tôi thích các khoá học ngắn hạn của codeschool.com hay codecademy.com. Ngoài ra tôi còn đọc các cuốn sách như Rails 4 in Action của Ryan Biggs và xem screencast trên RailsCast.
- Nhưng không có gì tốt hơn học thông qua thực hành, nên các bạn đừng ngần ngại nghĩ ra một ý tưởng nhỏ rồi thông qua những gì học được để viết ý tưởng đó thành app.
- Trên thị trường ngoài Rails ra còn có nhiều framework chất lượng khác, nhưng việc đầu tiên phải hỏi là tại sao phải chọn framework khác nhỉ? Tôi không thể phủ nhận là Rails làm mọi thứ trở nên rất dễ dàng cho người viết. Cái điểm mạnh đó cũng là điểm yếu của Rails, để trở nên dễ dùng, Rails thêm vào rất nhiều DSLs, anti-pattern và các lớp phức tạp, điều này giúp cho việc viết các ứng dụng mà Rails không nhắm vào trở nên rất khó khăn và chậm chạp. Vô tình thì Rails tạo ra một lớp lập trình viên lười biếng và mất căn bản vì mọi thứ đều đã được Rails hoá phép cho nên người dùng đôi khi không hiểu rõ vấn đề bên dưới. Tôi khuyến khích các bạn nên thử các framework đơn giản hơn như Sinatra hay Lotus chẳng hạn, nó sẽ giúp các bạn có một cái nhìn đa chiều và sâu hơn về vấn đề cần giải quyết.
- Hiện tại tôi đang tham gia vào dự án Lotus Framework (http://lotusrb.org) nên xin thông cảm nếu các ý kiến của tôi có phần thiên vị framework này hơn. Trong suốt những năm làm Rails, tôi luôn phải giải quyết những vấn đề khá hóc búa với các legacy Rails app. Bởi vì cấu trúc monolithic của Rails khiến cho việc cấu trúc lại app trở nên khó khăn và lâu ngày app sẽ trở nên trương phình và khó thay đổi hơn. Thêm vào đó Rails không thay đổi đủ nhanh để đáp ứng các thay đổi về mặt yêu cầu của các ứng dụng web, nhất là về frontend, thực sự đến thời điểm này thì rails dev vẫn than trời về các chức năng liên quan như asset pipeline và cách rails cấu trúc lớp View. Nhằm khắc phục tất cả những nhược điểm trên, Lotus Framework đã ra đời với chú trọng trên kiến trúc tách rời (modular) và hướng tới kiến trúc microservice. Ngoài ra Lotus trung thành với nguyên lý không đụng vào các lớp Ruby core và hướng đến đơn giản tối đa hơn là tiện dụng. Dự án hiện đã gây được nhiều chú ý trong cộng đồng Ruby và rất mong sẽ có thêm nhiều đóng góp từ cộng đồng Việt Nam.
- Dự án RailsGirls Summer of Code là một trong những dự án tôi tham gia cùng với một người bạn làm việc tại SoundCloud (ở Berlin, Đức) là anh Sven Fusch. Đây là chương trình 3 tháng hè của tổ chức RailsGirls dành cho các bạn nữ muốn học và trau dồi thêm về Ruby. Các bạn nữ sẽ làm việc theo cặp với mentor và coach trên một dự án mã nguồn mở có liên quan đến Ruby. Trong suốt 3 tháng hè này, các bạn nữ sẽ được tài trợ kinh phí ăn ở cơ bản và sẽ được tạo điều kiện tối đa để tham gia các sự kiện và hội thảo lớn trên thế giới. Sau khi hoàn tất chương trình, hầu hết các bạn nữ đều có thể đăng ký làm thực tập sinh cho các công ty lớn như Google, GitHub, v.v… Một cơ hội đổi đời cho rất nhiều các bạn nữ tham gia.
- Tại sao lại chỉ dành cho các bạn nữ? Như các bạn đã biết, một trong những vấn đề tiêu cực của ngành IT nói chung và phần mềm nói riêng là các bạn nữ thường không được bình đẳng như các bạn nam về mặt lương bổng và cơ hội, và ở Việt Nam thì phái nữ không được khuyến khích theo đuổi nghiệp lập trình vì xã hội coi đấy là công việc không phù hợp hay có con mắt coi thường phân biệt. Tôi muốn thách thức và thay đổi những định kiến đấy và tôi hy vọng thông qua những sự kiện như thế này, dần dần sẽ giúp thay đổi cách nhìn nhận của xã hội về vấn đề tiêu cực đó.
- Hiện chương trình đang tiếp nhận đơn đăng ký cho khoá 2015. Tôi vui mừng được thông báo là ở Việt Nam đã có 2 đội đăng ký tham gia. Nếu bạn muốn biết thêm chi tiết, thì có thể xem thông tin tại http://railsgirlssummerofcode.org/, nếu có câu hỏi gì thì xin đừng ngần ngại hỏi tôi, tôi sẽ ráng giúp hết sức.
- Tôi hy vọng trong thời gian sắp tới có thể tổ chức thêm nhiều sự kiện RailsGirls tại Việt Nam. Nếu các bạn nữ nào tâm huyết với cộng đồng và muốn giúp đỡ BĐH trong việc tổ chức các sự kiện trên thì xin hãy liên lạc với nhóm trên chat room.
- Vào đợt tuyển dụng vừa rồi thì tôi khá ngạc nhiên và cũng mừng khi thấy một vài bài nộp đơn xin việc làm remote từ Việt Nam tại Envato. Tôi hy vọng có thêm nhiều đồng nghiệp đến từ Việt Nam, tiếc là các bạn ấy làm tôi thất vọng. Không những các bạn ấy không chịu đọc kỹ các yêu cầu của đề bài về việc không được chia sẻ bài test lên mạng mà các bạn còn gian lận nữa. Thêm vào nữa chất lượng các bài nộp rất kém, đa số code đều rất cẩu thả, không giải quyết được vấn đề, không chứng tỏ được là khả năng tư duy, và chất lượng công việc chưa cao.
- Còn nói về khác biệt về cách nghĩ của lập trình viên Việt Nam và các đồng nghiệp Úc. Tôi nhận thấy là cách suy nghĩ ở nhà thường là những suy nghĩ ngắn và chộp giật, ăn xổi ở thì, chưa đặt chữ tín và chất lượng lên hàng đầu. Chưa kể thêm vấn đề đạo đức ở nhà là rất đáng báo động, các bạn thường không có cái tâm, nhiều bạn tôi từng nói chuyện thì xem việc ăn cắp bản quyền là chuyện bình thường, thậm chí có bạn còn bán mã nguồn của sản phẩm công ty mình đang làm ra ngoài. Vì cái lợi trước mắt mà các bạn đấy đã đánh mất đi cái uy tín của mình và của cộng đồng lập trình Việt. Vô tình giết chết những sản phẩm trí tuệ mang thương hiệu Việt Nam.
- Ở Úc thì tôi thấy lối suy nghĩ của họ thường lâu dài và bài bản hơn. Trong khi các lập trình viên ở nhà thường rất bị động trong công việc, toàn phải đợi việc và đợi người nào ở trên nói làm A hay làm B thì mới làm, và nếu không có sếp ở đó thì lười biếng ngồi chơi xem Youtube, ngược lại các lập trình viên Úc thường luôn chủ động trong công việc, tôi thấy các đồng nghiệp rất hiếm khi ngồi không, vì trách nhiệm nên họ luôn chịu khó bày thêm ra việc để cải tiến sản phẩm. Cái tôi thấy rất khác nữa là tư duy độc lập và sáng tạo của họ rất cao, cái này là cái mà tôi đôi khi rất ghen tị, họ luôn tự đặt ra câu hỏi về cách làm thế nào để giải quyết bản chất của vấn đề và cũng không ngần ngại đưa ra những ý kiến thách thức sếp trên. Đó là với công việc, bàn về cá nhân thì các bạn lập trình viên ở nhà cũng chưa nghiêm túc với việc phát triển kỹ năng nghề nghiệp, tôi thấy ít bạn tham gia meetup hoặc nói đi rồi lại không, ít bạn tham gia chia sẻ kiến thức (giấu nghề chăng?), lười biếng và có tư tưởng đổ thừa tại hoàn cảnh. Các đồng nghiệp của tôi thì không phải ai cũng siêu sao nên họ thường dựa vào đồng nghiệp và cộng đồng để tiến bộ, thông qua tham gia các meetup, hacking event, cởi mở chia sẻ kiến thức, họ học được thêm nhiều kiến thức mới và cũng kiểm chứng được những kiến thức đã học.
- Nói thế không có nghĩa là tôi chê các bạn ở nhà, tôi hiểu là điều kiện xã hội và văn hoá cũng tạo nên cái khác biệt. Tôi hiểu phương pháp giáo dục lạc hậu theo hướng học vẹt ở nhà đang giết dần cái tư duy sáng tạo của người Việt. Tôi biết là vòng cuốn xã hội và tiền bạc đã làm thoái hoá đạo đức. Tôi biết nhận thức của các sếp cũng chưa đến, vẫn chỉ dừng lại ở cái mô hình làm phần mềm đúng nghĩa theo kiểu chăn trâu, không chú trọng phát triển nhân lực và con người. Tôi hiểu cái thực trạng đó, nhưng nói thế không phải là để gật đầu với nhau cho qua chuyện, nói là để mong mọi người tích cực nhìn nhận và thay đổi để bắt kịp thế giới.
Vâng, tổ chức Ruby Vietnam là một dự án lâu dài của tôi và cộng đồng những bạn đam mê Ruby tại Việt Nam. Trong đầu tôi, mục tiêu của dự án là phải tạo ra được một sân chơi chất lượng, lành mạnh, an toàn (cho ngay cả các bạn nữ), góp phần kết nối các thành viên, các nhà tuyển dụng và cộng đồng Ruby trên thế giới. Tôi hy vọng thông qua các hoạt động này, nhóm có thể thay đổi nhận thức và trách nhiệm của các thành viên đối với cộng đồng.
Do đó vào đầu 2013 tôi và anh Lê Hiếu sáng lập ra trang Ruby Vietnam trên Facebook (https://www.facebook.com/vietnam.ruby) với mong muốn thông qua việc chia sẻ các bài viết kỹ thuật chất lượng cao liên quan đến Ruby để thu hút sự quan tâm của các thành viên ở nhà. Cuối 2014, nhóm chính thức được đăng ký thành tổ chức phi lợi nhuận theo luật Úc và có trang chủ tại http://ruby.org.vn/. Tiếp theo đó giới thiệu chat room (http://chat.ruby.org.vn), job board để tìm người/việc (http://jobs.ruby.org.vn), dự án chia sẻ và review sách, dự án dịch trang chủ http://ruby-lang.org qua tiếng Việt, v.v…
Trong thời gian đầu nhóm tăng trưởng thông qua Facebook và đa số các thành viên tham gia với vai trò bị động từ vài trăm LIKES lên tới hơn 3 nghìn LIKES (tính đến thời điểm 3/2015). Dĩ nhiên là con số người quan tâm thực sự sẽ ít hơn nhiều. Cũng phải kể đến con số các thành viên đóng góp nộp dung cho FB tăng từ 1 mình tôi lên đến 10 người.
FB không phải là kênh trao đổi duy nhất của nhóm, nhóm còn có chat room với tổng cộng 560 thành viên tham gia (tính đến thời điểm 3/2015), và trung bình 40 bạn thường xuyên trao đổi mỗi ngày.
Vào đầu 2014, với sự giúp đỡ của một số thành viên tại TpHCM, nhóm quyết định thử nghiệm tổ chức meetup offline và cho đến nay đã có 7 meetup tổng cộng tại TpHCM và 2 tại Hà Nội. Hoạt động meetup vẫn được tổ chức đều đặn mỗi tháng, xen kẽ với sự kiện hack night tại TpHCM và Hà Nội. Loại hình hoạt động cũng không khác gì với các phiên bản trên thế giới, sự kiện bao gồm 3 bài nói dài (15 phút) hoặc 2 bài nói dài kết hợp với 2,3 bài Lightning Talk (5’). Các bài nói xoay quanh các chủ đề về Ruby, Rails, DevOps, quản lý sản phẩm, quản lý nhóm, triết lý lập trình và tất cả những thứ gì mà dân lập trình giỏi quan tâm. Ngoài ra còn có phần đóng góp và chia sẻ các tin tức liên quan đến Ruby của tháng vừa rồi và dành riêng một phần cho các nhà tuyển dụng quảng cáo việc làm. Tôi rất vui được chia sẻ với các bạn đọc là con số các bạn tham gia meetup ngày càng tăng, hiện có trung bình 40 bạn tham gia mỗi kỳ, nếu so với con số 10 đến 20 bạn những buổi đầu là rất đáng khích lệ, song song với số lượng người tham gia thì chất lượng các bài nói rất tốt và mọi người khá là ‘hăng’ trong việc trao đổi câu hỏi, có nhiều lúc MC phải cắt ngang các bạn đặt câu hỏi để đủ thời gian cho các bài khác. Tôi tự hỏi liệu có bao nhiêu công ty làm Ruby trên thị trường tại Việt Nam đã biết về số lập trình viên triển vọng này, nếu xét tình trạng khan hiếm lập trình viên Ruby hiện nay thì các công ty không còn gặp tình trạng bị động khi “săn đầu người” qua các kênh truyền thống nữa. Thay vào đó, cách các công ty trên thế giới đang sử dụng là vươn ra cộng đồng để quảng bá hình ảnh và kêu gọi tuyển dụng. Nói thế mới thấy meetup là một kênh tuyển dụng mới và rất hiệu quả, tôi được biết có ít nhất 5 công ty đăng việc trên job board (http://jobs.ruby.org.vn) đã tìm được người.
Trong suốt 3 năm qua, tôi đã gặp được rất nhiều người để cùng chia sẻ đam mê, và 22 người trong số đó đã trở thành thành viên BĐH, họ giống như là cánh tay “nối dài” của tôi vậy, không có họ thì tôi không thể tổ chức bất cứ sự kiện nào ở nhà được cả. Tôi muốn gửi lời cảm ơn đến BĐH, các công ty Envato, GitHub, JetBrains, JobReady, Framgia, EastAgile, Silicon Straits Saigon, ZIGExN Ventura và các thành viên của nhóm.
Hình ảnh trong buổi Ruby Vietnam Group meetup 5 diễn ra vào tháng 12/2014 tại TpHCM
Nếu được đưa ra một lời khuyên cho các bạn trẻ đang theo đuổi ngành CNTT thì anh sẽ nói gì?Có rất nhiều lời khuyên bổ ích từ các lập trình viên máu mặt khác mà các bạn nên đọc. Tôi chỉ xin góp ý một vài điểm mà tôi cảm thấy không ổn với các bạn trẻ ở nhà.
Thứ nhất là thiếu trách nhiệm và nghiêm túc với mọi người và bản thân. Với mọi người thì trong các sự kiện xin các bạn hãy tôn trọng người khác bằng cách đến đúng giờ, nếu không đến được thì phải gọi điện huỷ trước, có khá nhiều bạn ở nhà đăng ký đi meetup mà chẳng đến và cũng chẳng báo. Hoặc khi làm các bài test kỹ thuật, nếu đã quyết nộp đơn thì xin hãy đọc kỹ và hoàn thành các yêu cầu của nhà tuyển dụng, tránh vi phạm các lỗi thường gặp như chia sẻ đề bài với người khác chẳng hạn. Còn nếu không làm được thì cũng nên thông báo cho nhà tuyển dụng, tránh viện ra những lí do như bài test dễ quá nên không cần làm (nghe như trò đùa nhưng tôi có biết những trường hợp như vậy).
Thứ hai là thói đổ lỗi cho hoàn cảnh, tôi nghe nhiều bạn viện cớ để bào chữa cái sự lười và thiếu chí tiến thủ của mình. Mỗi người đều có những hoàn cảnh riêng, và mỗi người phải tìm mọi cách để vượt qua những khó khăn đó, đằng sau những tấm gương thành công đều là những câu chuyện nỗ lực phi thường. Để trở thành lập trình viên giỏi, lập trình viên được lương cao thì cần đặt yếu tố phát triển lên hàng đầu, nghiêm túc trong việc học tập. Sẽ có những lúc bạn sẽ phải đứng trước những quyết định giữa sự ổn định và điều kiện để phát triển thêm, hãy mạnh dạn cởi mở tiếp nhận những yếu tố rủi ro và lấy đó làm động lực để lớn thêm. Nếu vấp ngã thì hãy rút kinh nghiệm và tiếp tục đứng dậy bước tiếp.
Thứ ba là bỏ đi cái suy nghĩ cẩu thả, ăn xổi ở thì, chộp giật theo trào lưu. Trào lưu đến rồi sẽ đi, đừng có quá say nó mà quên đi cái mấu chốt để giỏi là cái căn bản. Chỉ có một nền móng vững thì mới có thể phát triển thêm. Hãy đi chậm nhưng chắc và tìm cho mình một chỗ đứng và một điểm nhấn.
Thứ tư là rèn luyện thêm kỹ năng tư duy sáng tạo và tư duy giải quyết vấn đề, xin đừng trở thành những con vẹt hay những robot để người ta nói gì làm nấy, hãy chủ động giải quyết vấn đề theo phương pháp thực dụng nhất và đừng ngần ngại bảo vệ ý kiến của mình nếu thấy đấy là đúng. Tôi hiểu ít nhiều các bạn bị ảnh hưởng bởi lối giáo dục chữ trả thầy ở trường, nhưng giờ các bạn không còn ngồi ở ghế nhà trường nữa, và chữ bây giờ là trả tiền ăn, tiền thuê nhà cho các bạn. Nếu các bạn muốn được nhận vào các công ty nước ngoài thì kỹ năng này rất là quan trọng, không kém gì so với các kỹ năng khác.
Thứ năm là trau dồi kỹ năng giao tiếp và tiếng Anh. Không có cách nào có thể chạy trốn được tiếng Anh, nếu các bạn đã theo nghiệp này thì bằng mọi cách phải mau chóng rèn luyện tiếng Anh để có thể làm chủ được công việc. Cuối cùng là cũng nên tìm hiểu thêm về các khía cạnh văn hoá của đồng nghiệp (nếu là nước ngoài) để tránh bị vô duyên, một ví dụ là thói quen hay hỏi những câu hỏi đời tư với người khác mặc dù chưa quá thân.
Tôi mong các bạn sẽ gặt hái được nhiều thành công. Xin nhớ rằng cơ hội sẽ đến với tất cả những ai có đủ tri thức để nắm bắt nó.
Cảm ơn anh đã tham gia phỏng vấn và cung cấp rất nhiều thông tin bổ ích cho độc giả của VinaCode. Chúc anh thành công với các kế hoạch sắp tới.
Cảm ơn VinaCode.
No comments:
Post a Comment