Đóng góp ý kiến và báo lỗi phiên bản mới tại đây

public6 năm trước

Từ Một Người Bán Đồ Ăn Trên Đường Phố Đến Làm Việc Ở Các Công Ty Hàng Đầu Về Công Nghệ.

Hết hạn

Bài viết sau được dịch từ chia sẻ trên medium.com của Alavro Videla

Trong loạt bài này, tôi muốn chia sẻ với bạn cách tôi bước  vào thế giới lập trình. Tôi chưa từng học đại học chuyên ngành IT, nhưng tôi đã tìm ra cách để học nó.   Nếu bạn thích những câu chuyện này và muốn đọc cuốn sách này, vui lòng để lại phản hồi  ở bên dưới.

 Vào cuối năm 2006, tôi đứng giữa ngã tư của cuộc đời.  Hi vọng của tôi trở thành giáo viên cấp 2 dạy ngôn ngữ học  đã biến mất nhanh chóng, vì một số yếu tố và nó khiến tôi không thể tiếp tục việc học.

 Quay trở lại quê nhà của tôi ở Durazno, Uruguay, vợ tôi đã làm việc nhiều giờ với mức lương 160 đô la một tháng . Như vậy một năm là 1920 đô la. Chúng tôi đã nỗ lực dành thời gian làm việc để tôi có thể trở thành một giáo viên và có một công việc tốt hơn  vì chúng tôi luôn mơ ước về một tương lai tốt đẹp hơn.

Nhưng giấc mơ sẽ biến mất khi bạn tỉnh giấc và cuộc sống trong giấc mơ cũng biến mất.

Bởi vì, sự nghiệp của tôi đã đột nhiên ra khỏi quỹ đạo, tôi chuyển về quê hương để tìm các bước tiếp theo trong sự nghiệp của mình. Thực sự, tôi chán nản mọi thứ, cuộc sống của chúng tôi ngày càng tồi tệ. Đó là một điều tốt khi tôi trở lại quê nhà với vợ, nhưng đó cũng là lí do cho sự căng thẳng.

Thêm vào đó, chúng tôi ở chung nhà với dì của vợ tôi, vì vậy sự riêng tư của chúng tôi chỉ giới hạn trong phòng ngủ và chúng tôi luôn cảm thấy như chưa bao giờ được sự chào đón từ họ.

Để thêm thu nhập, vợ chồng tôi bán mì ống tự làm trên đường phố. Tôi sẽ gom tất cả  đơn đặt hàng vào cuối tuần. “ Xin chào, bạn muốn đặt ravioli  cho bữa ăn vào chủ nhật không? Sau đó, tôi sẽ trả lời câu hỏi của khách: “Đúng,  chúng là tự làm, cho chúng tôi  thêm  thời  gian và chúng tôi sẽ giao nó cho bạn”.

Sau khi  mọi người đặt hàng , chúng tôi dành toàn bộ cuối  tuần để làm 2000 ravioli, lãi được 500 peso trên 1 túi, khoảng 20 đô la, chưa trừ chi phí.

Tình hình này khiến tôi ngày càng chán nản, vô vọng. Vợ của tôi làm việc cả tuần, cuối tuần cô ấy dành toàn bộ thời gian để giúp tôi chuẩn bị ravioli. Cô ấy thậm chí không có một ngày cuối tuần cho bản thân. Cô ấy năn nỉ tôi ngừng bán ravioli, điều đó có nghĩa là chúng tôi sẽ không đủ tiền để trả các chi phí sinh hoạt khác.  Cuối cùng tôi đồng ý, nhưng điều này có nghĩa là tôi phải cố gắng tìm một công việc - và  tìm kiếm một công việc  ở nông thôn là không dễ dàng. Lo lắng và tuyệt vọng đã bắt đầu.

Một buổi tối, tôi đã nói chuyện với một người bạn đang học kỹ thuật máy tính tại trường đại học Montevideo.  Anh ấy nói với tôi về những cơ hội việc làm khác nhau mà tôi có thể tìm thấy ở thủ đô, với mức lương là những điều mơ ước cho một người sống ở nông thôn. "Có công ty lớn ở Montevideo, Live Interactive," anh ấy nói với tôi. "Họ luôn tìm kiếm các lập trình viên, có lẽ bạn có thể cố gắng để có được một công việc ở đó. Họ trả lương rất thỏa đáng”.

Tiền lương mà  anh ấy đề cập khoảng  gấp ba lần so với số tiền chúng tôi đã từng kiếm được, và tôi không  thể tưởng tượng được tất cả những gì chúng tôi có thể làm với số tiền đó. Chúng tôi không cần phải lo lắng về các bữa ăn. Cuối cùng chúng tôi có thể tự trả tiền kết nối internet , có được quần áo và giày dép mới, và thậm chí có máy giặt riêng!

Không chỉ vậy, tôi đã có kinh nghiệm với máy tính. Tôi thích làm việc với họ, vì họ cần tay nghề của tôi để giải quyết vấn đề. Công việc lập trình nhắc nhở tôi  phải crack mã hoặc tìm ra giải pháp cho một vấn đề khó - nhưng ngoài thách thức thì thật thú vị. Hơn nữa, tôi thấy lập trình  là một nghề  có nhiều tiềm năng phát triển.

Nhưng có một vấn đề nhỏ: để làm việc như là một lập trình viên máy tính, một trong những điều  cần biết là làm thế nào để lập trình máy tính. Với  tôi! Tôi có thể tự cài đặt Linux, nhưng vẫn còn hạn chế.

Làm thế nào để bạn có một công việc như một lập trình viên máy tính trong khi  bạn hầu như không có kinh nghiệm lập trình và bạn thiếu một tấm bằng đại học để chứng minh sự hiểu biết của bạn? Làm thế nào để bạn học cách lập trình mà không có truy cập internet ở nhà, mà không có người chỉ bảo, và không có cơ hội tiếp cận các cuốn sách lập trình? Đó là vấn đề của tôi trong năm 2006, và đây là câu chuyện về cách tôi giải quyết nó.

Thời gian đầu tiên

Tôi nghịch với máy vi tính từ khi còn nhỏ, hầu hết bạn bè của tôi đều có máy tính. Trong khi chúng bạn thường sử dụng máy tính để chơi trò chơi, tôi không thấy thú vị với điều đó. Tại sao? Quay lại khi tôi bắt đầu trung học, cha của một người bạn cho chúng tôi sử dụng máy tính ZX Spectrum. Ông ấy có băng cassette tốt với rất nhiều trò chơi, và tất nhiên, chúng tôi có thể chơi tất cả những gì chúng tôi muốn, nhưng mỗi ngày, ông ấy đã cho tôi thấy một điều: mọi người có thể tự tạo ra các trò chơi bằng cách lập trình máy tính!

Ông đã chỉ cho tôi một số thủ thuật trong BASIC, như cách bạn có thể tạo ra các số ngẫu nhiên sử dụng chức năng RAND. Tôi rất ngạc nhiên. Vào thời điểm đó, tôi nhận ra rằng máy tính không chỉ là một chiếc máy Nintendo với bàn phím: bạn có thể nói với chúng  để làm mọi việc cho bạn - những điều tuyệt vời, như vẽ các đường ngang, các hàm lượng giác và sau đó vẽ chúng bằng cách sử dụng các màu ngẫu nhiên! Bạn thậm chí có thể tạo âm thanh bằng cách chuyển các tần số khác nhau sang BEEP. Thực tế, khi tôi mang Spectrum  về nhà và đã dành cả buổi chiều để chơi các loại âm thanh có các tiếng bíp khác nhau trên TV - tôi chắc rằng mẹ tôi rất thích nó.

              Làm thế nào để bạn có một công việc như một lập trình viên máy tính khi bạn hầu như không có kinh nghiệm lập trình và bạn thiếu một tấm bằng đại học để chứng minh khả năng của bạn?

Sau đó, trong những năm tuổi thiếu niên , tôi tiếp tục dành thời gian cùng bạn bè những người có máy tính riêng của họ, và  chúng tôi đã chơi nhiều trò chơi trên đó. Trong khi đó, với những người bạn am hiểu sâu sắc hơn, tôi đã học được một vài thủ thuật về hệ điều hành - chủ yếu là MS-DOS.

Mỗi một lần, chúng tôi sẽ thử một số chương trình BASIC bằng cách sao chép, đặc điểm kí tự, các đoạn mã xuất hiện trong các chương trình máy tính cũ. Đối với  chúng tôi, dường như  có phép  ma thuật hay như các câu thần chú về công nghệ. Có một điều chúng  tôi thực sự thích, đó là việc  cố gắng để chỉnh sửa các tin nhắn văn bản để hiển thị cho các tình huống khác nhau. Chúng tôi nghĩ chúng tôi như những hacker  vậy!

Vào đầu những năm 2000, tôi đã thuyết phục  ông nội tôi mua máy tính: một chiếc Pentium MMX với 32MB RAM! Lần đầu tiên tôi cài đặt Linux, sử dụng một đĩa CD SUSE miễn phí với một chương trình máy tính Argentina. Tôi đã dành khá nhiều thời gian trên máy tính: cố gắng  phân biệt các Linux khác nhau, làm quen với dòng lệnh, vân vân, nhưng chưa bao giờ  làm bất kỳ chương trình nào thực sự.

Nhìn lại thời gian đó, tôi không hiểu tại sao tôi không học chương trình C - hoặc bất kỳ chương trình nào để giải quyết  vấn đề đó. Một người bạn đã đưa cho tôi cuốn sách về  chương trình C của Kernighan và Ritchie, do đó, việc không có cơ hội tiếp cận các cuốn sách lập trình chỉ là một cái cớ . Nhưng vì một lý do nào đó, sau khi đọc một số ví dụ, nó không gây bất kỳ mối quan tâm nào với tôi, vì tôi hiểu nó sẽ không hữu ích cho tôi. Trong bất kỳ thời gian nào, làm việc  với Linux là điều duy nhất tôi  làm với máy tính .

Từ đó, tôi đã có một số công việc nhỏ, chơi trong một ban nhạc rock 'n' roll, và cố gắng trở thành một giáo viên ngữ âm, sau khi kết hôn, tôi cùng vợ đi du lịch khắp đất nước.

Tháng 11 năm 2006, bằng chính năng lực của mình, tôi được thuê vào làm cho một công ty phần mềm mà mình yêu thích. Tôi đã trở thành một lập trình viên máy tính đáng tin cậy.

Thời gian cho một số mục tiêu

Nếu tôi  muốn được thuê, điều đầu tiên cần làm là đánh giá kỹ năng của tôi như là một lập trình viên. Tôi phải trung thực với bản thân mình,vì vậy tôi có thể biết được chỗ nào cần phải cố gắng.

Vào thời điểm đó, tôi biết một chút về ActionScript dành cho Flash MX và những điều cơ bản về lập trình PHP. Đầu năm đó, tôi đã bắt đầu học công nghệ  như một sở thích. Tôi cũng đã bắt đầu một dự án thú vị để học lập trình, có lẽ nó có thể trở thành một nguồn thu nhập thứ yếu.

Tôi đã đưa ra ý tưởng tạo bản đồ kỹ thuật số cho quê hương của tôi nơi  người dùng có thể tìm được các vị trí của doanh nghiệp, cửa hàng và các địa điểm thú vị. Các doanh nghiệp muốn xuất hiện trên ứng dụng  bản đồ cần mất  một khoản  chi phí.

Tất nhiên tôi biết những gì bạn đang nghĩ. "Đó chỉ là Google Maps". Vâng, nhưng trong năm 2006, điều duy nhất Google Maps biết về quê hương của tôi là nó được cắt ngang bởi một quốc lộ lớn. Có vẻ như ứng dụng bản đồ của tôi là một ý tưởng  tốt. Ngoài ra, tôi hình dung dự án này sẽ là một cách hoàn hảo để giới thiệu kỹ năng của tôi cho một nhà tuyển dụng tiềm năng. Tôi đã có một mục tiêu rõ ràng về những gì tôi đặt ra. Tôi chỉ cần bắt đầu  và làm cho nó thành hiện thực

Vì vậy, vào cuối năm 2006, tôi đặt ra: đến tháng 2 năm 2007, tôi  phải có một ý tưởng về ứng dụng bản đồ. Điều này phải bao gồm một cổng vào Flash, được cung cấp  bởi một phụ trợ PHP, sử dụng MySQL để duy trì dữ liệu. Loại công nghệ tôi vừa đề cập có thể không  liên quan đến ngày nay, nhưng ở thời điểm đó,  tôi phải theo dõi  từng chi tiết trong kế hoạch của mình vì vậy  tôi sẽ biết những vấn đề nào phải giải quyết trước, vì thời gian trôi qua: mỗi ngày đi qua là một ngày khác ,thời điểm đó  vợ tôi cũng bị căng thẳng , làm ngoài giờ để đảm bảo bữa ăn cho gia đình.

Thêm vào đó, để có thể có được công việc lập trình, tôi đã thể hiện là một người công nhân tiềm năng bằng việc tôi có thể lập trình trong các chi tiết kĩ thuật, vì đó là một phần môt tả công việc của tôi. Tất nhiên, tôi đã không đề cập đến những kỹ năng này trong hồ sơ của tôi, vì vậy tôi phải xây dựng kiến thức và ý tưởng về ứng dụng bản đồ của tôi sẽ là phần giới thiệu về chuyên môn lập trình của tôi.

Kế hoạch này là để phỏng vấn tại công ty mà bạn tôi đã đề cập trước đó, và hy vọng với sự kết hợp của các kỹ năng và ý tưởng về ứng dụng bản đồ, sẽ giúp nhận được một công việc ở đó. Ngay  sau đó, tôi nhận ra được tầm quan trọng của việc đặt ra các mục tiêu rõ ràng cho chính mình để đạt được những gì bạn muốn.

Kế hoạch nghiên cứu : ứng dụng bản đồ

Ứng dụng bản đồ tôi đã tạo ra được gọi là Aleph Maps - một tài liệu tham khảo về câu chuyện năm 1949 của Jorge Luis Borges, "El Aleph" về một nơi trong vũ trụ, nơi có mọi thứ - quá khứ, hiện tại và tương lai. Không tham vọng gì cả, phải không? Và để đưa ý tưởng này ra đời, tôi sẽ phải học cách lập trình các ứng dụng  web.

Không có internet ở nhà là một thách thức thực sự cho một nhà phát triển web trong tương lai. Khi tôi bắt đầu, ADSL băng thông rộng hầu như không tồn tại, chỉ giới hạn trong các doanh nghiệp và có thể là các hộ gia đình giàu có. Đối với gia đình trung bình, kết nối Internet có nghĩa là quay số bằng kết nối modem và phải trả giá cao để có trải nghiệm internet chậm. Tôi không có khả năng đó, có nghĩa là tôi đã phải làm phiền bạn bè mỗi khi tôi cần thiết để truy cập một số hướng dẫn trực tuyến đã giải thích làm thế nào để chạy chương trình trong PHP.

Vì vậy, mặc dù tôi có máy tính và tinh thần học hỏi, nhưng tôi vẫn không thể truy cập dễ dàng hoặc thường xuyên để biết thông tin về cách thực hiện. Nhưng tôi quyết tâm làm bằng được, và tôi biết rằng ngay cả những thất bại này sẽ không ngăn cản tôi học PHP. Bạn không có thời gian để lãng phí, bạn không có thời gian để cảm thấy tuyệt vọng; thay vào đó, bạn phải tập trung vào việc tìm giải pháp.

Trong khi đó, do thiếu truy cập internet quanh thị trấn, các quán cà phê Internet bắt đầu xuất hiện trong thành phố, tính phí khoảng nửa đô la trong một giờ lướt mạng.  Điều này như là một giải pháp tốt hơn so với việc liên tục làm phiền bạn bè. Nhưng cũng đồng nghĩa với việc mất thêm  50cent và phải mang một vài đĩa mềm đến quán cà phê Internet, tìm thông tin mà tôi muốn, sao chép nó vào một trong những đĩa mềm, và mang nó về nhà cài vào máy tính của tôi.

Hãy tưởng tượng tôi nản lòng như thế nào: Tôi đã phải đi đến một quán cà phê Internet và đã phí 50 xu mà không đáng để mất. Nửa đô la! Số tiền đó có thể không nhiều, nhưng tại thời điểm đó, bạn có thể mua một chiếc burger hoặc một chai bia với 1  đô la. Đối với chúng tôi, nó rất nhiều tiền: nó  có thể mua được chai sữa hoặc một ổ bánh mì.

Trong thời gian đó, thói quen của tôi là cố gắng giải quyết vấn đề A để đến được vấn đề  B. Đôi khi giải quyết các vấn đề  khá dễ dàng và tôi cảm thấy như mình đang tiến bộ nhanh chóng. Những ngày khác, tôi biết được mình đang làm đến đâu. Ví dụ,  tôi đã phải thực hiện một tính năng như "chèn dữ liệu mới vào cơ sở dữ liệu. Điều này có nghĩa là  tất cả những trở ngại mà tôi phải giải quyết để có thể đạt được - từ cách viết một câu lệnh SQL INSERT đến cách thực hiện nó bằng PHP - và sau đó tích hợp mọi thứ vào ứng dụng.

Mỗi nhiệm vụ là một mục trên “danh sách mua sắm” hàng ngày khi tôi đến quán cà phê internet. Tôi sẽ sử dụng một vài đĩa mềm , và sau đó dùng  google để  đăng trên blog, hướng dẫn, và hướng dẫn có thể giúp tôi giải quyết các mục trên danh sách ấy. Khi đã hoàn tất, lưu chúng trên đĩa và về nhà, hy vọng dữ liệu đã được lưu thành công và sẽ dễ dàng truy cập vào máy tính.

Bởi vì không chắc chắn , việc đi xe đạp về nhà  tạo nên sự lo lắng tồi tệ hơn bao giờ hết. "Nếu dữ liệu không có thì sao?" Tôi tự hỏi. "Điều gì xảy ra nếu chiếc xe lắc quá nhiều và dữ liệu bị hỏng? Tôi thực sự không có một đồng đô la để tiêu  cho đến ngày mai, do đó, sẽ tốt hơn khi tôi ở nhà.

Tôi đã quyết định nhận công việc đó, và tôi biết rằng ngay cả những thất bại này sẽ không ngăn cản tôi học PHP. Khi bạn không có thời gian để lãng phí, bạn không có thời gian để cảm thấy tuyệt vọng; thay vào đó, bạn phải tập trung vào việc tìm giải pháp.

Thực tế thì  không phải như vây. Một lần tôi về nhà, tôi sẽ sử dụng thông tin mà tôi đã đem về  để giúp tôi hoàn thành nhiệm vụ đang tiến hành, nhưng một khi đã hoàn thành, tôi thiếu kiến thức để thực hiện bước tiếp theo. Điều này có nghĩa là tôi phải ở nhà, suy nghĩ về một vấn đề, và chờ đợi cho đến ngày hôm sau, khi tôi có thể kiếm thêm 50 cent  để đi đến quán cà phê và lặp lại thói quen này. Mặc dù vào thời điểm đó dường như là lựa chọn duy nhất của tôi, cuối cùng tôi đã phải thừa nhận với chính mình rằng đó là thời gian cho một chiến lược mới. Tôi cần một cái gì đó chứa hầu hết thông tin về cách viết một ứng dụng web bằng PHP và Flash MX, với các hướng dẫn ,giải thích cách thực hiện các công việc đơn giản nhất, tất cả chỉ trong một nơi. Không phải Internet, mà là những cuốn sách!

Nghe có vẻ ngớ ngẩn, nhưng cho bất kì ai trong trường hợp của tôi, những loại sách tôi cần thì tôi không thể có được. Vấn đề là khi bạn thuộc tầng lớp thấp kém  trong xã hội, việc tiếp cận sách không phải là dễ dàng. Điều đơn giản nhất với một cuốn sách lập trình là bạn có thể tìm thấy ở thư viện công cộng sẽ với một số hướng dẫn sử dụng lỗi thời về cách sửa chữa máy tính - có thể là một số hướng dẫn về MS-DOS bụi bặm, hoặc có lẽ là một cuốn sách BASIC hoặc Delphi nếu bạn may mắn - nhưng không nhiều.

Vậy ít nhất người ta có thể mua sách, phải không? Không thực sự như vậy.

Tại hầu hết các thị trấn ở vùng nông thôn của Uruguay, sách kỹ thuật thường không có ở các cửa hàng sách, và thị trấn của tôi cũng không ngoại lệ. Thêm vào đó,  vấn đề thực tế là hầu hết các cuốn sách công nghệ - đặc biệt là những người nói về công nghệ tiên tiến - được viết bằng tiếng Anh, và các hiệu sách địa phương thì không thể có những sách này.Cuối cùng, điều này làm tôi chỉ có một lựa chọn: Amazon.

Nhưng cũng không dễ chút nào. Để mua sách trên Amazon, bạn cần một miếng plastic nhỏ gọi là thẻ tín dụng, nhưng để có được thẻ tín dụng, bạn cần có một lịch sử tín dụng tốt - mà đối với hầu hết mọi người thì  không phải là vấn đề.Tuy nhiên, trong trường hợp của tôi, tôi đang sống trong một thế giới hoàn toàn khác: mọi thứ chúng tôi mua được đều trả bằng tiền mặt. Chúng tôi không có tiền hoặc sự chắc chắn về kinh tế để tham gia vào kế hoạch tín dụng.

Chúng tôi đã thực hiện kế hoạch đó như sau: nếu muốn mua thứ đắt hơn thu nhập hàng tháng, chúng tôi sẽ tiết kiệm hàng tháng cho đến khi chúng tôi có đủ tiền để mua những gì chúng tôi muốn hoặc có thể vay các thành viên trong gia đình và làm việc để trả lại cho họ sau.

Thậm chí nếu chúng tôi  có chọn mua sách trên Amazon, chúng tôi không nghĩ rằng trong thực tế chi phí  vận chuyển một cuốn sách  từ Hoa Kỳ đến Uruguay gần như bằng  giá của cuốn sách đó , không kể  phải mất một tháng mới nhận được sách.

Đối với tôi, tôi đang sống trong một thế giới hoàn toàn khác: tất cả những gì chúng tôi mua được đều thanh toán bằng tiền mặt.

Đôi khi giải pháp cho những vấn đề này dễ dàng hơn tôi nghĩ. Cuối cùng, chúng tôi cũng cần sự giúp đỡ  từ gia đình. Vợ tôi có một cô dì đã sống ở Mỹ trong một thời gian, vì vậy chúng tôi nghĩ nên hỏi xem cô ấy có thể mua cho tôi một vài cuốn sách lập trình hay không. Vì vậy, tôi đã viết một email cho cô ấy nói về mong muốn  của tôi, nhấn gửi, và cầu nguyện rằng cô ấy sẽ giúp. Sau một vài ngày, tôi đã nhận một email mới trong hộp thư đến. Cô ấy thẳng thắn trả lời : "Cho cô biết sách nào cháu cần và cô sẽ đặt hàng  từ Amazon." Sau khi nghiên cứu, tôi đã nhờ mua sách  Flash MX Bible và PHP 5 và MySQL  

Hai cuốn sách này  rất hữu ích cho những nghiên cứu tiếp theo. Chúng rất đầy đủ, giúp tôi có thể tiến bộ nhanh hơn mà không cần phải liên tục đến  quán cà phê internet để tìm kiếm thông tin. Tôi có thể phát triển hơn ứng dụng bản đồ dựa trên những gì tôi biết. Cuối cùng tôi có thể tìm được những  thông tin mà tôi cần, đã đến lúc ngồi xuống trước máy tính và bắt đầu làm việc.

Tôi hy vọng bạn thích phần đầu tiên này. Trong phần tiếp theo, tôi sẽ nói về việc tôi đã tự chuẩn bị như nào để xin việc cho vị trí này và bạn sẽ  biết quá trình phỏng vấn diễn ra như thế nào.

Tác giả: Alavro Videla

Link bài gốc: https://medium.freecodecamp.org/become-how-i-went-from-selling-food-in-the-street-to-working-for-top-firms-in-tech-6aa61a2d0629

Dịch giả: Dudu - YBOX.VN Translator

(*) Bản quyền bài viết thuộc về YBOX.VN. Khi chia sẻ, cần phải trích dẫn nguồn đầy đủ tên tác giả và nguồn là "Dịch Giả: Dudu - Nguồn: YBOX.VN". Các bài viết trích nguồn không đầy đủ, ví dụ:"Theo Ybox" hoặc khác đều không được chấp nhận và phải gỡ bỏ.

(**) Trở thành dịch giả trên YBOX.VN, xem chi tiết tại đây: http://bit.ly/yboxtranslateteam

 

 

Hết hạn

----------------------------

Hợp Tác Cùng YBOX.VN Truyền Thông Miễn Phí - Trả Phí Theo Yêu Cầu tại http://bit.ly/YBOX-Partnership

1,162 lượt xem