Tối giản việc đọc tin nổi bật, comment chất lượng nhiều reaction trên voz cho các fen bận rộn.

VozFen.com: [Chia sẻ] Real case học lập trình của một người tay ngang

@damadoko Joined: 09/2013
#1
Ưng 28

[Chia sẻ] Real case học lập trình của một người tay ngang

@ctw_god 05/2016
#2
Ưng 14
Vàng quan điểm
1 trong những điều may mắn nhất của đời người là đi làm gặp mentor có tâm.

@damadoko 09/2013
#17
Ưng 4
Part-2 Quyết định sáng suốt nhất.

Hi các bác, mùa dịch này ae lập trình đa số được ở nhà WFH. Em cũng may mắn được ở nhà tránh dịch, lương vẫn full và có time bên vợ con. Ngày cuối tuần, lướt Facebook thấy các anh chị khi xưa làm chung với em ở dưới quê post ảnh chụp với nhau, vì ở công ty họ đang thực hiện '3 tại chỗ' để chống dịch
. Nghĩ lại lúc xưa lên SG, bỏ công việc đúng chuyên ngành, vấp phải biết bao sự ngăn cản của người thân lại là quyết định sáng suốt. Nhưng có lẽ quyết định sáng suốt nhất trong công việc của em đó là quyết định nghỉ việc để học lập trình
.

Ở phần trước em có chia sẻ, em có học a mentor .Tr, mà em vừa muốn làm vừa muốn học. Bác nào từng làm việc ban đêm, chắc cũng biết nó vất vả cỡ nào. Em làm ca đêm từ 8h tối đến 4h sáng, vừa về phòng là lao lên giường ngủ ngay, đến tầm 12h trưa mới dậy nổi, còn phải tranh thủ đi ăn trưa không thôi hàng quán nó đóng cửa mất. Lúc đó em vừa quen bạn gái, làm chung công ty, thế là còn mất time nói chuyện, gặp nhau => một ngày có dưới 4 tiếng để học (mà cũng không học được full 4 tiếng đó, mất 2 tiếng lướt YouTube, Facebook các kiểu), thế là bỏ cuộc trong vòng 1 tuần.
Chung quy lại là do không có time (em nghĩ thế), bây giờ bạn gái thì không bỏ được nên em quyết định bỏ việc thôi
. Lý do để bỏ việc thì có nhiều, em cũng chẳng xúi các bác phải bỏ việc hiện tại để tập trung học (vì đời không như mơ, phần sau sẽ rõ...). Chỉ là tại thời điểm đó, em có cơ sở để tin tưởng rằng nếu dồn toàn thời gian học lập trình, thì em sẽ thành công trở thành dev sau 6 tháng:
  1. Em có học đại học, tốt nghiệp loại giỏi, cấp 3 thì trường chuyên, cấp 2 thì lớp chọn => có đủ tư duy học lập trình
    .
  2. Tiếng Anh của em cũng khá, tốt 2 skill reading và listening
    => có đủ năng lực tiếp thu document, course online.
  3. Bạn gái em ủng hộ 2 tay, sau khi nghỉ việc sẽ thuê 1 phòng sống chung để đỡ tiền nhà
    => Có người tin tưởng mình, đồng cam cộng khổ.
  4. Em có tiền dành dụm là ~150tr (sau khi ba em phá sản, 1 thời gian sau mẹ em mất để lại căn nhà, cũng bị bank siết gần hết) => Có tiền sống khoẻ ở SG trong vòng 1 năm.
  5. Trong cty em làm có nhiều dev, và ông dev trùm (director) ở đó cũng là dân tay ngang, xuất thân bên hardware lắp mạng trông quán net
    . Lần nào nghe ổng chém cũng sướng rân cả người => ông làm được thì tui cũng làm được => Có niềm tin rằng mình sẽ làm được.
Nhưng mà đời không như là mơ các bác ạ,...
(To be continue...)

@damadoko 09/2013
#29
Ưng 6
Vàng quan điểm
Part-3 Khoảng thời gian khó khăn nhất.

Hi các bác, trở lại câu chuyện sau khi em nghỉ làm để tập trung học lập trình. Khoảng thời gian này vừa khó khăn, và vừa vui vẻ nhất. Vui vẻ là em tìm được bạn đời, đồng cam cộng khổ. Tụi em hay đi dạo mỗi tối, xem phim, đi phượt, mỗi ngày em đưa đón bạn ấy đi làm, ăn trưa chung.Cuối cùng, tụi em quyết định đến với hôn nhân và đi chụp ảnh cưới, làm đám nối, đặt nhà hàng chuẩn bị làm đám cưới
,... Mọi chuyện về mặt tình cảm, gia đình quả thực rất tốt đẹp nhưng về mặt học tập của em thì đi theo hướng ngược lại, không tốt chút nào.

Hãy nhớ lại tuổi thơ, khi các bác đi học trường lớp nào cũng có nội quy, quy chế xử phạt nếu làm sai. Xung quanh các bác là những bạn đồng trang lứa và có cùng mục tiêu học tập. Từ tiếng chuông báo vào học, tan học, sự căng thẳng hồi hộp trong các kì thi,... Những thứ trên có phải là những 'event trigger' khiến các bác phải ngồi vào bàn học, phải ôn bài trước kì thi không
?. Việc tự học thì khác, các bác chỉ có 1 mình, và không ai care các bác học ra sao cả. Trong căn phòng 20m2 lộn xộn, cùng cốc Café G7 pha vội, cố nhồi nhét những kiến thức mà các bác chưa hiểu học chúng nó để làm gì, với hàng tá thứ có thể làm sao nhãn các bác: Facebook, YouTube, game, điện thoại,... các việc lặt vặt: rửa chén, dọn nhà, đón bạn gái, gửi đồ đi giặt,....

Cưới vợ thì phải có tiền chớ, tiền đi chợ, sắm đồ, quà cưới hỏi, vàng cưới, nhà hàng.... Thế là em tính già hoá non, muốn lấy vợ thì số tiền dành dụm chả đáng là bao. Thời gian này các bác dễ bị stress rất nặng chủ yếu là vì thiếu tiền và không theo được plan học tập của các bác đã đề ra. Bạn gái em thì không hối thúc gì nhưng mà phụ mẫu của bạn ấy cũng sốt ruột lắm, bây giờ mà không học nhanh tìm việc, người ta đợi hết nổi thì em mất hết, em như bị dồn vào đường cùng vậy
.
Các bác phải chấp nhận là mình đang thất nghiệp, tương lai không chắc chắn. Thiên hạ ác mồm ác miệng lắm, chủ yếu là người thân với người quen, nên gặp người nào mà gây cho em cảm giác tiêu cực thì dẹp, không nói chuyện nữa, bạn bè thì em cho nó bye bye luôn
. Skill cần phải luyện nhất là mặc kệ thiên hạ nói gì, phải tránh xa những đứa toxic. Các bác nghĩ thằng bạn thân biết chuyện sẽ động viên ủng hộ
? No no, nó sẽ kể về thành công của nó, về việc muốn làm được thì phải học trường lớp đàng hoàng như nó.Các bác nghĩ người thân nghe chuyện sẽ support về tinh thần lẫn tiền bạc
? No no, các cụ khuyên các bác quay đầu là bờ, tiền làm không ra thì vứt, đừng xài hết tiền,....

Lúc này em mới thay đổi timeline và cách học :
  1. Thức dậy sớm, uống 1 cốc nước và bắt đầu học => Bộ não tỉnh táo và thông minh nhất khi vừa thức dậy, không ăn sáng để trigger mode sinh tồn, các bác sẽ có khao khát học hơn (sau khi học khoảng 2 tiếng thì mới ăn sáng, xem như reward cho quá trình đã cố gắng).
  2. Thay đổi môi trường học tập => chọn môi trường thoáng, có người xung quanh. Em chọn 3 quán cf hay uống, mỗi sáng chở bạn gái đi làm xong thì ra uống tới trưa, học ở quán cf cóc thì hơi ồn ào tý, nhưng cũng vui, lâu lâu cũng gặp mấy em sinh viên học nhóm, mấy ông sell BĐS ngồi tiếp khách, .... Nói chung mỗi người có một công việc, và em cũng vậy!
  3. Tranh thủ thời gian học bất cứ lúc nào => khi làm việc nhà, em thường bật kênh YouTube tech talk mà mình đang quan tâm. Khi nằm nghỉ, ngủ, em thường suy nghĩ về problem mà em vừa gặp phải, hoặc nhớ lại lý thuyết, tự đặt câu hỏi và tự trả lời. Đêm em hay nằm mơ về code, nói mớ solution hài vđ
    .
  4. Thực hành pomodoro technique: 25p làm việc và 5p nghỉ ngơi => Phương pháp chông sao nhãng hiệu quả nhất, 25p làm việc tập trung này không những học được nhiều hơn, mà còn nhớ lâu hơn.
  5. Ngủ đủ giấc => ngoài việc bảo vệ sức khoẻ tinh thần, việc ngủ đủ giấc giúp não bộ gia tăng các liên kết nơ-ron thần kinh, giúp nhớ lâu.
Hầu hết các điểm nêu trên mình học được từ khoá học: Learning how to learning của coursera. Mọi chuyện có vẻ ổn cho đến khi em làm CV xin việc....
(To be continue...)

@damadoko 09/2013
#33
Ưng 5
Gặp đúng mentor có tâm thì đỡ tốn tg công sức lòng vòng. Cơ mà lead full stack sao có 1k thế
A ấy làm 1 Cty outsource lớn, thường outsource range lương không cao. Giờ a ấy nhảy qua dev cho Bank nước ngoài, không rõ lương bao nhiêu, 1k là cách đây 2 năm rồi đó bác.
Làm it cài máy trông mạng cơ quan fix lỗi máy móc cho chị em thì có học được không thím?
Ngày rảnh cũng khá mà toàn vào voz đọc báo
Học được chứ bác, em có biết 1 ông Director (dạng Software architect) có backgound giống bác đấy. Nghe ổng nói lúc switch sang làm dev là gần 3x rồi (giờ ổng 4x ).
Mịa ông thớt với profile show thế kia mà ko giỏi thì có mà nên đi nhẩy mịa cầu đi . Có căn bản rồi trình độ rồi chỉ thiếu quyết tâm và cơ hội là thành tài thôi . Như tôi sinh ra lớn lên ko nhiều áp lực nên đến h vẫn làng nhàng đủ ăn nuôi vợ con . Đến tuổi rồi học khó vào lắm , tôi có học mỗi html với css để chỉnh sửa cái site theo ý của mình mà học mãi ko đc . Nghĩ lại thấy tiếc ngày trước lúc còn trẻ toàn chơi game ko chịu đầu tư học hành . Giờ thì đi làm culi .hic
Nếu bác tầm 3x đã vợ con rồi thì em không dám khuyên, còn bác mới 2x thì all in lập trình đi bác. Trong vòng 3 năm, nếu theo được ngành thì khả năng cao bác sẽ gỡ lại được vốn (Tiền học + time nghỉ việc).
bác sinh năm bao nhiêu thế
Hi bác, em sinh năm 96 nhưng không có học cơ khí bách khoa nhé .

@damadoko 09/2013
#41
Ưng 8
Vàng quan điểm
Part-4: Cú tát đầu ... ngành.

Hi các bác, em đặt title là 'cú tát đầu ngành' vì đây không phải lần đầu tiên em đi tìm việc, em cũng bị đời nó tát nhiều rồi. Lần này em gặp 1 Cty rất củ chuối và hài hước
, đến bây giờ nghĩ lại vẫn muốn đờ mờ chúng nó phát.

Quay lại chuyện tìm việc, em đã học được 6 tháng rồi (tính từ lúc nghỉ việc, còn học được thật sự bao nhiêu time thì khó nói
). Mà giờ đã hết 6 tháng như trong plan đã đặt ra, nếu mà không đi xin việc chắc nhà vợ (tương lai) tế sống em. Mặc dù luyện code chưa tới đâu nhưng em vẫn quyết định xuất sơn dò xem bản thân có phù hợp với market chưa.
Skill set em có lúc đó là: HTML, CSS (+bootstrap), Javascript , là 3 cái cơ bản nhất cho front-end dev. Thiệt ra em cầm CV cũng không tự tin lắm, chỉ có vài khoá học trên Udemy và 1 cái web portfolio code bằng bootstrap + 1 project counter (cái pomodoro mà em có share ở part-3)+ với vài project clone trong lúc theo các khoá học (2 khoá HTML+CSS và khoá Javascript). Nộp trên IT việc thì có mail reject trong vòng 1p30s
, rãi ở topdev thì không thằng nào reply lại cả.
Bế tắc quá, em đành join các trang tìm việc cho front-end ở trên FB mà hóng ngày này qua ngày khác, tìm mãi mới thấy 1 job chỉ yêu cầu tới Javascript (phần lớn các job đều require biết 1 Framework như React, Vue, Angular). Job này cho chính thằng chủ công ty đăng, title intern và yêu cầu biết cơ bản html-css-js là được. Hí hửng apply và đi phỏng vấn, vào pv họ thì hỏi về nhưng project trong CV, pv 5p nhận luôn, mai đi làm
. Em có hỏi về lương thì Cty hứa sẽ có phụ cấp thực tập chứ không có lương. Các cụ hay nói 'đầu xuôi đuôi lọt', quả xin việc này quá nhanh khiến em về nhà nổ với bạn gái quá trời
. Search GG thì thực tập cũng tầm 3-4 củ, có thể san sẻ tiền nhà tiếp bạn gái.
Thế là em cắp con laptop đi làm các bác ạ, dù gì làm thực tập sinh vẫn hơn là ngồi học chay không làm gì . Vào làm nó chỉ yêu cầu xem các trang web của Cty làm (tụi này outsource design và cắt HTML + backend PHP, nói chung là landing page thôi), và xem trang design Award gì đó để học hỏi, nói chung em ngồi từ sáng đến chiều chỉ để xem design. Trong đây có 1 thằng tên Đ gọi là 'senior' front-end chuyên cắt HTML và làm animation, hắn hỏi em học lập trình lâu chưa, em cũng ngáo ngơ trả lời là: "Em tự học được 6 tháng rồi", thế là từ đó nó cứ khinh khỉnh với em, làm em khó chịu cực kì. Mà muốn hỏi cũng chẳng có gì để hỏi, vì k có task. Bài học rút ra là: Cẩn thận với bọn hỏi làm được bao lâu rồi, học lâu chưa, bọn này đa số không tốt đẹp gì, thấy mình yếu là tìm cách dìm ngay để giữ vị trí của chúng nó.
Sau 3 ngày thằng 'giám đốc' đưa offer là 300k/tháng gọi là tiền phụ cấp xăng xe + hứa là chỉ 2 tháng thử việc sẽ có thu nhập tầm 3-4 triệu
. Lúc đó em tức điên lên, bảo nó thế Cty trả cho senior tầm bao nhiêu, nó trả lời là 8-10 triệu 1 cách không biết ngượng là gì luôn. Ngay hôm đó em xin nghỉ liền, à không, ngay lúc đó em đứng dậy đi về liền. Chạy xe về mà trong lòng ức chế lắm các bác ạ, cuộc đời em không hẳn là chưa bị bóc lột nhưng em vẫn thấy sốc với mức
lương như vậy => lúc nhận việc thì hỏi cho rõ offer là bao nhiêu để khỏi lằng nhằng phí thời gian và né bọn hứa hẹn tương lai.

Hôm đó bạn gái động viên an ủi em, và Connect với 1 ông dev front-end trong Cty cũ (Cty mà em nghỉ nhưng bạn gái còn làm), lúc trước nếu em làm ca sáng thì sẽ gặp ổng và ổng cũng biết em đang theo lập trình. Ổng nghe xong cũng thấy tức vl, hẹn em hôm sau đi cafe nói chuyện trao đổi thêm, ông này là mentor thực sự đầu tiên của em.

(To be continue...)

@damadoko 09/2013
#48
Ưng 5
Part-5: Gặp được mentor đầu tiên.

Hi các bác, không biết các bác định nghĩa 1 người mentor tốt ra sao. Đối với em, sự 'có tâm' là quan trọng nhất, mentor có tâm sẽ giúp bạn nhiệt tình, không có giấu kiến thức. Sau cú tát 300k/tháng ở part-4, em may mắn gặp được 1 người mentor như vậy (gọi là a. M). Nếu nói về technical, a. M không phải là người giỏi nhất em từng gặp, nhưng a có tâm, giúp em trong lúc em mất phương hướng nhất.

Phản ứng đầu tiên của a. M là: 'd c m Cty nào mà cùi mía vậy
!!!', ngay ngày hôm sau em và ảnh đã hẹn uống cf ở đối diện Cty. Sau 1 hồi nói chuyện, có vài điểm mà em rút ra được:
  • Xác định bọn 'đỗ nghèo khỉ': không có tiền thuê văn phòng hoặc bét nhất là co-working space, mà thuê 1 căn chung cư dạng officetel (max 10 củ/tháng). Không có tiền đăng tin tuyển dụng ở các trang như ITViec (trang này muốn đăng tin thì phải mất phí hàng tháng nha
    ) mà phải tìm người trên FB (chính thằng chủ cũng không post bài tuyển dụng, nó chỉ Comments ở post tuyển dụng tháng trong Group). Không có tiền nhiều trả cho dev nên mới để bọn dev trong Cty nó thủ dâm với title 'senior' (không biết có bác nào senior cắt html không nha).
  • Xác định Job dạng low level: Cắt HTML, CSS và làm animation cho landing page. Ông BE duy nhất code PHP để ship cho user nguyên cục HTML,CSS,JS => cái này thì lỗi thời rồi. Mà kêu là tuyển FE cũng sai, FE bây giờ nó có nhiều thứ khác chứ không chỉ cắt HTML.
Đúng là người có kinh nghiệm làm việc trong ngành nói có khác các bác ạ. Tính ra bọn này có quá nhiều dấu hiệu của 1 Cty tồi, nhưng mà mấy người tay ngang như em không thấy được. A. M động viên em học thêm 1 thời gian đi, ảnh có test thử lý thuyết về html, css, js của em thì thấy ok, có thể bắt đầu học framework như React rồi, nếu muốn học React thì ảnh chỉ cho. Em như bắt được vàng các bác ạ, lúc về a. M còn không quên đưa ra một số bài test thuần Javascript, bảo khi nào làm xong ảnh review cho.

Các bài tập ảnh giao dạng nhỏ thôi, nhưng mà em phải tự làm (bình thường clone theo các course online). Quả thực trong mấy ngày đầu em không làm được các bác ạ, quá trình này là sự tổng hợp các kiến thức đã học, nếu các bác có kiến thức trong đầu mà không ra được output thì chưa đi làm được. Trong quá trình làm bài tập thì em cũng quay lại research chứ không nhớ nổi => Learning by doing là hiệu quả nhất, mà phải làm những thứ không có sẵn (như clone các project khoá học) thì mới tiến bộ nhanh được.

Sau các bài tập về JS là các bài tập về React, và em vừa học React vừa làm. Lúc này em được giao 'due day' (deadline) cho task, khá áp lực nhưng mà nó nhanh. Kiến thức vừa học đem ra dùng liền, mà dùng là phải động não chứ không giống các project trong các course. Khi học các course online và clone project theo họ, các bác rất dễ ảo tưởng bản thân cũng làm được những project đó.
Cũng trong khoảng thời gian này, em học thêm những mảng gọi là 'advance' của JS. Cũng may trong 6 tháng trước đó, em học những thứ rất cơ bản và nắm khá chắc chắn. Nghĩa là theo từng thời điểm mà mình chọn tài liệu, khoá học khác nhau, lúc trước em chỉ hiểu được những cuốn sách dạng 'abc ... for dummy',
khi có căn bản rồi thì học dễ hơn, đọc hiểu được cuốn sách bình thường cho tới advance. Đừng nhảy cóc, vào học những thứ cao siêu nhưng mà không apply nổi.
Các project e làm bằng React là 'todo list', 'calculator', 'covid report' (api public) để update cv. Lúc này em mới đi kiếm job lần 2...

(To be continue...)

@haihoang267 02/2017
#57
Ưng 4
Nghe ông thớt kể lại nhớ hồi tự học code của mình những đêm ngồi 4 tiếng vừa xem youtube vừa code theo. Mình từng mất tròn 1 năm để release trang web đầu tiên cho người dùng (với trình độ bây giờ chắc mất tầm 3-4 tuần).
Sau này gặp mentor ngon mới lên như diều gặp gió. Nhoằng cái đã đi làm được 5 năm rồi, nhưng mãi mãi ko bao giờ quên được những ngày tháng vất vả đó


via theNEXTvoz for iPhone

@damadoko 09/2013
#64
Ưng 5
Part-6: Việc tìm người hay người tìm việc?

Tình hình dịch đang căng thế này nhưng lâu lâu account Linkedin của em vẫn được Head-hunter contact job các bác ạ. Hiện tại em đang có hơn 250 connection Linkedin, khoảng 80% là em được invite, trong số đó lại có khoảng 50% là họ contact job (nghĩa là giới thiệu job, Cty, range lương chứ vẫn phải phỏng vấn nha các bác). Còn 20% connection là do em gửi invite và tất cả đều nằm trong khoảng thời gian em đi tìm việc lần 2. Nếu làm dev tay ngang, các bác sẽ phải build connection từ con số 0, sẽ khó tìm được job nếu không có ai biết các bác. Theo em thì job đầu tiên là khó tìm nhất, khi đã có kinh nghiệm thì job sẽ tự tìm đến các bác.

Quay lại thời gian em tìm việc lần 2. Chiến thuật của em lúc đó là rải CV khắp các trang tìm việc, tìm connection linkedin và không quên mồi chày ông mentor (a. M) xem Cty có đang hoặc sắp tuyển dev chưa
. Rút kinh nghiệm đợt trước, em chỉ apply những job fresher, junior để tránh bị ép lương. Bác nào tay ngang thì cũng học đến mức apply được fresher chứ đừng vào intern. Khi mức expect của Cty đối với các bác càng cao thì mình mới có cơ hội phát triển được, job title phản ánh mức expect đó, mức lương ứng với title phản ánh độ 'có tiền' của Cty và công việc thực tế so với mức lương phản ánh độ đàng hoàng của bọn nó
.
Lúc này thì CV của em đã có phản hồi (dù tỉ lệ thấp), các HR của cty (thường là nữ) sẽ call trực tiếp với em (xem như phỏng vấn lần 1). Họ sẽ giới thiệu về Cty và job description, còn lại là trao đổi về profile, sở thích,... linh tinh. Cuối cuộc gọi thường thì HR sẽ hẹn lịch pv lần sau luôn, nếu kêu các bác chờ là 90% fail nha.
Vòng 'call interview' này chủ yếu xem các bác phù hợp với Cty hay không (bằng cảm quan). Kinh nghiệm của em là hãy thẳng thắn nhất có thể với HR, các bác không cần quá nhún nhường nha, vì không hợp thì chia tay sớm bớt đau khổ, có vào vòng sau thì cũng dễ out. Ví dụ như họ hỏi 'Em có ngại đi làm xa không?', thì mình bật Google map lên mà xem bao xa, tránh trường hợp chạy đến Cty chưa phỏng vấn là đã mệt muốn về (case này thực tế của em
).

Khi phỏng vấn vòng 2 thì mới có sự khác biệt giữa các Cty (thường là technical interview) :
  • Cty làm web game của Trung: em đi phỏng vấn Cty này là cực nhất, đi rất xa và kẹt xe. Đến nơi thì toà nhà không cho vào (phải có người dẫn lên) nên ngồi đợi. Vừa vào thì phải spend time điền vào 'tờ khai' của Cty, mục đáng chú ý duy nhất là expect lương (mà đúng ra phải trao đổi từ lúc call với HR) và tiếp tục ngồi đợi. Tiếp theo là đưa laptop cho làm bài test IQ + 1 bài về viết script call api bằng JQuery, và đến đây em mới biết là họ không cho Connect internet hay sử dụng điện thoại ạ. Em gãy chỗ JQuery chỉ đọc document mà dám nói là có biết làm JQuery với HR
    .
  • Cty outsource của Nhật: cty này thì vui, HR support nhiệt tình, vừa vào thì ngồi trao đổi 1 time chứ không làm test ngay. Sau đó họ đưa laptop yêu cầu code responsive cho 1 cái form có sẵn HTML. Đọc code bọn này mới biết tụi nó rất strict trong convention và có nhiều comment, bài này thì em làm được. Sau đó họ đưa 1 content và bảo em design bằng photoshop, lúc này em té ngửa luôn, họ dùng bản photoshop từ đời tống (khác với giao diện em vừa tập làm cách đó mấy ngày), kết quả em fail nặng. HR cũng đi năn nỉ mấy ông dev cho pass mà không được
    .
  • Cty về gọi xe của VN: phỏng vấn trực tiếp với founder ở quán cf ở quận 7 (gần nhà ổng). Lần này thì em không biết fail từ khi nào luôn, nhưng ngồi nói chuyện cũng vui, khi về cũng thấy đầu óc được khai sáng hơn. Ổng trao đổi nhiều thứ về thị trường mảng đặt xe & tầm nhìn của ổng, project đang chạy tới pharse nào rồi. Em cảm thấy ngành lập trình có thể contribute cho xã hội nhiều thứ rất lớn, muốn dân giàu nước mạnh thì cần những start-up Việt, nắm được công nghệ lõi, trong mảng này bây giờ toàn nước ngoài chiếm hết. Khoảng hơn 1 tháng sau thì ổng lên báo (em đọc tên viết tắt và mảng gọi xe), nghe nói bị bọn 'ông lớn' trong ngành đe doạ + có bạo lực với ổng, God bless you man
    .
  • Cty giáo dục trưc tuyến của VN: Bọn này thì kiểu nhà nước rất khó chịu, vào đưa 'tờ khai' mà còn bắt buộc ghi đã từng làm Cty nào, với mức lương bao nhiêu mới vl. Vào phỏng vấn về technical với 2 người, em trả lời được 50/50. Câu nào em không trả lời được (hoặc sai) thì 2 anh ấy giải thích 1 cách khinh khỉnh, câu hỏi cũng rất specific vào 1 công nghệ nào đó (hỏi Real-time-chat). Ôi chắc cũng vì 2 anh này còn trẻ (chưa đến 30 tuổi) mà đã lên title cao, theo thái độ phỏng vấn, nếu em có vào làm cũng khó mà học hỏi được từ mấy ổng.
Có nhiều Cty em bị fail từ vòng 1 với HR rồi nên em không review. Chỉ nhớ có Cty nhà nước của VN, phỏng vấn vòng 1 gặp ngay ông technical mà chỉ hỏi có biết cái này không, biết cái kia không, tại sao chỉ biết cái này mà không biết cái kia (biết hết thì t *éo vào Cty bọn m
).

Nói chung em fail nhiều, đến nỗi chai sạn cảm xúc luôn á. Nhưng mà trời không phụ lòng người, em được nhận vào công ty cùi mía thứ 2 với mức lương 12 củ net. Còn vì sau lương ổn mà em vẫn chê thì phần sau sẽ rõ nhé.

(To be continue...)

@NobiEmon 03/2020
#96
Ưng 4
Thanks bác
Em 97 . Cũng biết sơ sơ về máy tính chơ IT code củng thì chịu

Nếu được thì nhờ thím chỉ giúp em cái lộ trình từ cơ bản rồi lên từ từ với . Tới đây tháng 10 em cũng chuẩn bị về quê , tiện thể thử xem có ok không . Được thì bỏ thời gian ra cày để kiếm công việc
1/ lấy căn bản thì html+css+js->php(cả hướng đối tượng nữa nhé)+mysql | yêu cầu: làm đc 1 cái web cỏ cơ bản (create,read,update,delete) mấy cái này trên ytb chỉ đầy ra, kiếm cái list nào đó rồi code theo nhưng phải hiểu, phải biết search lỗi để fix.
2/
backend: có căn cơ rồi thì tìm hiểu mô hình mvc+ 1 framework như CI,laravel mà học, chắc đc mvc+ 1 cái frame work là tự tin xin thực tập đc rồi

frontend thì học html+css+js kĩ xíu thôi( vào cty làm riết quen )->kiếm cái lib/framework như reactjs hoặc vuejs là xong

nếu thực sự siêng năng thì tầm 3-6 tháng là xin thực tập đc tuỳ thím quyết

PS: phải biết search google nhé, lỗi cứ search tên lỗi để giải quyết vấn đề, search giỏi là ok cân tất nhé và box CNTT(F91) sẵn sàn giúp đỡ thím nhé

@damadoko 09/2013
#98
Ưng 4
Part-7: Intern, Fresher hay Junior?
Hi các bác, lại là em đây
. Ở đa số các ngành khác, level của nhân viên thường được phân loại theo năm kinh nghiệm (experience = exp). Các Cty sẽ dựa vào những level đấy mà apply range lương tương ứng, vì vậy sinh viên mới ra trường mặc định sẽ vào level thấp nhất, nhận mức lương bèo nhất và làm những việc dễ nhất (tất nhiên). Nhưng việc phân loại level nhân viên theo exp có chính xác không? Đặc biệt đối với ngành lập trình, nơi mà các kiến thức mới được update liên tục, các 'best practice' luôn thay đổi theo năm tháng, các requirement luôn đa dạng và đặc thù theo từng công ty. Theo em, năm kinh nghiệm chỉ là con số. Một anh dev làm 1 loại công việc, lập đi lập lại trong 10 năm sẽ khác với một anh dev luôn muốn upgrade bản thân để làm nhiều việc hơn. (Nguồn: How to become a senior software engineer: Experience is a lie)

Ở phần trước em có đề cập đến job 12 củ net mà quên note là em pass Junior chứ không phải Fresher
. Lúc đó skill set của em là HTML, CSS, JS và React, Redux + pet project: Covid-19 Report (apply Redux, Redux-thunk, ChartJs, Hook). Em cũng chỉ rãi CV vào các job Fresher, Junior chứ không apply vào Intern nữa. Anh mentor (a. M) cũng nhận xét là em nên apply Junior, vì bây giờ còn thiếu kinh nghiệm thực tế, làm vài tháng hết thử việc thì cũng ngang tầm Junior rồi.

Cty lần này thuê văn phòng ở Q1, Job là tuyển Junior React với range 12-16 củ (nếu em nhớ không lầm). Có 2 vòng phỏng vấn nhưng mà em phải phỏng vấn đến 3 vòng
. Vòng 1 call HR thì cũng tương tự các công ty khác, có điều CV của em có nhiều project hơn và remove phần education (Vì cho dù có học tới thạc sĩ, tiến sĩ mà không liên quan đến lập trình thì cũng không nên để trong CV). Ở vòng 2 em phỏng vấn trực tiếp với a lead front-end, đa số lý thuyết em trả lời được, cái nào chưa làm mà có đọc qua thì cũng chém gió luôn, 2 ae nói chuyện có vẻ hợp để làm việc chung. A Lead có nói thêm là vào cty phải chịu khó, vì source hơi cùi(??) và phải làm T7 , tiếp đó anh Lead cũng hỏi expect mức lương là bao nhiêu, em đưa ra expect là 12 củ net (range dưới của Job này và phải làm cả T7).

Tiếp theo là phần Coding (cũng là vòng final), nhưng do HR quên note với em là đem theo laptop nên a lead có suggest là ngày mai quay lại em đem theo laptop để làm bài test. Chắc do nói chuyện hợp nên a cũng tiết lộ là sẽ test về form, validation => tối đó em cày tới khuya, xem lại các khoá học về xử lý form trong React, lần đầu em pass được vòng 2 nên háo hức lắm các bác ạ, chỉ 1 vòng nữa thôi. Bài test là tạo 1 cái form đăng nhập (from scratch) không sử dụng thư viện ngoài + đăng nhập bằng API của cty => lưu token để có Access vào 1 trang private sau khi refresh (f5), thời gian làm bài là 1 tiếng. Em thì có biết làm hết ấy, nhưng mà code không kịp các bác ạ, phải init project và config router, code css (ở mức chấp nhận được) rồi mới đến phần control form. Trong phòng em làm bài test cũng có một số người đang làm việc (sau này mới biết là vào soi). Em cố hết sức, code liền tay nhưng đến khi call API thì timeout, a Lead vào và hỏi 1 số thứ + hướng tiếp theo sau khi call được API. Em tiếp tục chém gió một lúc với anh Lead và ra về.


Vài ngày sau em nhận được tin nhắn Skype của HR pass phỏng vấn, lương 12 củ net. Thế là em lại tiếp tục mang laptop đi làm các bác ạ, bắt đầu chuỗi ngày đen tối ở cái cty VN này...

(To be continue...)

@damadoko 09/2013
#106
Ưng 5
Part 8: Những dấu hiệu của 1 công ty tồi

Hi các bác, hôm nay em vô tình đọc được 1 blog với title là 'Những sự thật về nghề lập trình viên chẳng ai nói cho bạn đâu!' (https: //itviec.com/blog/lap-trinh-vien). Tóm tắt bài viết là: Đừng quá trau chuốt code, chạy là được, khách hàng không quan tâm code ra sao đâu, bỏ thời gian viết code đẹp là lãng phí thời gian và nên tập trung vào kĩ năng mềm để PR bản thân (còn recommend đọc cuốn 'đắc nhân tâm' để thu phục lòng người?
). Đọc xong blog em lại có cảm hứng viết tiếp về hành trình của 1 dev tay ngang các bác ạ, .

Phần trước em đã kể đến đoạn em pass được job với mức lương net 12 củ, có vẻ em kể quá chi tiết về chuyên ngành nên có nhiều bác sẽ khó follow, em sẽ rút kinh nghiệm viết overal hơn. Tóm lại là lúc pass job này em đã làm nhiều project nhỏ (pet project) bằng kiến thức đã học được + một chút may mắn do a lead của cty này tiết lộ về bài test (tạo giao diện đăng nhập). Em sẽ note lại những vấn đề gặp phải ở cty này để các bác hình dung được một cty tồi sẽ treat các bác như thế nào.

Ngày đầu tiên đi làm, em được giao source code (mã nguồn) bằng một cách không bình thường lắm: a lead nén File .zip và đưa usb cho em lưu về máy (laptop cá nhân của em luôn). Bác nào làm dev sẽ biết các ae trong team làm việc chung một dự án sẽ quản lý code bằng VCS (Version Control Software) như Git. Cty lấy lý do là em vừa vào làm chưa chuẩn bị máy tính kịp (yêu cầu em tự mang laptop cá nhân theo) => Cách làm việc không chuyên nghiệp.

Cơ cấu nhân sự của công ty này không hoàn toàn là cty công nghệ, ngoài HR ra còn có bộ phận quản lý, bộ phận marketing, bộ phận về pháp luật?. Nói chung là có nhiều bộ phận khác ngoài dev. Trong mảng lập trình web thường sẽ chia ra 2 team là FE (front-end) và BE (back-end) + 1 DevOps (optional, có thể có hoặc không). Team FE có 3 người (1 lead, 1 intern + em là junior), team BE có 3 người (1 lead, 2 intern) và trùm cuối có title là Technical Lead (tech lead) tự xưng là biết mọi thứ từ FE, BE tới DevOps (nhưng tuổi dưới 30??). Phân tích về cơ cấu nhân sự của cty thì đây là công ty start-up product (gồm nhiều bộ phận ngoài dev và sản phẩm chưa release). Nhưng về cơ cấu dev thì lại có vấn đề khi thuê các dev có trình độ quá chênh lệch (rất nhiều intern <=> lead, có nghĩa là ông lead này phải hướng dẫn toàn bộ intern?). Khi em bắt chuyện với 1 bạn intern thì biết là làm intern không lương
.
Ở các công ty sau này em làm, nếu có tuyển intern thì sẽ tuyển số lượng hạn chế, đồng thời trình độ dev level middle cũng phải đông + vài ông senior và lead. Giống như tháp dân số già vậy (đầu tù, bụng to, đít nhọn) vì lực lượng 'trẻ em' mà đông quá thì tốn công chỉ bảo lắm. Công ty nào quy mô nhỏ như start-up thì nói thẳng luôn là tuyển middle trở lên để tránh 'cầm tay chỉ việc' làm hao tổn tài nguyên trong hoàn cảnh lượng công việc lớn mà tiền đầu tư có hạn.

Sản phẩm mà công ty này đang build là app cho vay, lãi suất cao hơn lãi Bank nhưng mà thấp hơn lãi suất cho vay nặng lãi (nên sinh ra bộ phận giải quyết vấn đề pháp luật chăng?). Doanh thu của cty sẽ dựa vào lãi suất này với tên gọi mỹ miều là tiền 'Tip', nhưng mà nói thẳng ra là làm app dạng cho vay tiền online thôi
. Nhân sự công ty thì lưu manh khỏi phải nói, từ chủ cho đến nhân viên. Sặc mùi công ty gia đình trị, phó giám đốc là 'em ruột' của giám đốc (maybe), techlead (dưới 30 tuổi nhé) với 'General Manager' (GM) là 1 cặp, lead FE với HR là 1 cặp (mối quan hệ dính chùm và có dây mơ rễ má với nhau).

Làm đến ngày thứ 2 thì con nhỏ GM (hỏi thì nó nói là 'chị làm quản lý chung', nên đặt tạm GM cho có chút chuyên nghiệp) kêu vào phòng họp. Sau một hồi chém gió về tương lai sáng lạng của cái app cho vay + ca ngợi công sức của team dev (mà đặc biệt là bạn trai Techlead của chị ấy), chốt lại thì bạn ấy đưa ra 1 cái deal 'tự nguyện' là lấy 2 triệu tiền lương của em để đầu tư vào cty, khi công ty có lãi sẽ chia lại cho nhân viên như mua cổ phiếu vậy, em có thể đầu tư trên 2 triệu thì càng tốt. Chị còn nhấn mạnh là tất cả mọi người trong cty đều làm như vậy và 'đặc ân' này chỉ dành cho nhân viên chính thức của cty thôi (intern không lương nên không có 'đặc ân' này nhá
). Lúc đó em định say đé* rồi nhưng mà kìm lại được, từ chối 1 cách nhẹ nhàng.

Nói về source code của cty, 90% code là của a lead FE và 'Tech Lead' viết. Sau 2 ngày đọc code vã mồ hôi em vẫn chưa hình dung nổi luồng code nên em mới đưa cho anh mentor (a. M) xem thử. Ổng nhận xét là source này viết theo kiểu cũ, mindset của người viết là dân BE chuyển qua (là thằng Tech Lead đó
) nên sẽ khó đọc nếu em không học về OOP (Object-oriented Programming), cái này thì tay ngang học FE sẽ vướng. Ngoài ra, người maintain source này không rành về OOP nên đang xen với cách viết khác. Về phần structure cũng lộn xộn, khó follow, lặp code nhiều. Nói tóm lại, source code tồi, không được maintain đàng hoàng. Source không tốt thì em gặp nhiều, thường thì nó sẽ được maintain để càng ngày càng tốt hơn, phải bỏ time để refactor code, nếu mà đang chạy deadline thì có thể viết tạm nhưng phải refactor về sau. Đối với Blog mà em share ở đầu bài, em hoàn toàn không đồng ý với quan điểm của họ, đối với em thì làm dev hơn nhau ở dòng code chứ không phải chuyện PR bản thân hay giao tiếp tốt. Các bác dev có gạch đá em xin nhận.

Đến ngày làm việc thứ 4, em bị 'Tech lead' gọi lên phòng họp cùng a Lead FE. Ổng hỏi 'tại sao 2 ngày qua em chưa làm được gì cho công ty mà toàn ngồi đọc code với hỏi a Lead, em nhắm liệu có làm nổi không?'. Em mới nói là 'A lead giao source cho em, bảo là đọc để biết luồng code', rồi tới a Lead bị chất vấn là 'Tại sao không giao task, task a giao em không pass lại cho bạn à?'. Cãi qua cãi lại, thì tóm gọn 'Tech Lead' muốn giao task ngay, làm không được thì tuyển người khác, còn a Lead có quan điểm là với source code này nếu chưa nắm được thì sao làm nổi, khi nào hiểu thì mới giao task chứ. Cuối cùng thì 'Tech Lead' chất vấn em là khi nào đọc xong source?, em có biết lương em đang rất cao không?, hôm qua chị GM có trao đổi với em thì em chọn là làm việc vì tiền rồi thì em phải bỏ kết quả đúng với số tiền nhận được chứ
?. Giải pháp cuối cùng là 'Nếu em đọc source không quen, thì em có thể viết lại source mới theo công nghệ mà em biết, em ước lượng thời gian hoàn thành rồi báo a' ( nghĩa là dùng thư viện mới bây giờ chứ không dùng thư viện đã bị outdate như hiện tại
).

Giờ ăn trưa em chạy gấp qua công ty của bạn gái, bàn bạc 1 hồi thì quyết định nghỉ việc
. Thực sự gặp bọn lưu manh này em cũng bị sốc lắm, ngồi trong phòng họp chỉ biết dạ dạ chứ không dám phản bác gì. Em quay lại cty và lẳng lặng đem laptop về, bảo vệ toà nhà thấy em lấy xe sớm thì khó chịu ra mặt, vì ông ấy phải dời xe ra để em lấy xe (Cty đi làm sớm nhất và về trễ nhất của toà nhà
). Hỏi ra thì em xả với ổng: 'Đ* m* thằng ch* (techlead) tầng 4 láo quá nên con không làm nữa', ông bảo vệ cũng hỏi là thằng xxx đúng không, có vẻ chuyện này với ổng không lạ gì. Phóng chiếc winner phi nhanh trên đường nhưng em lại quay về làm loser tiếp các bác ạ, cứ tưởng sẽ phụ giúp được cho bạn gái, rồi còn cưới hỏi, rồi chuyện công việc bạn gái đã lỡ khoe với gia đình,..., em khóc
.

(To be continue...)