Tag Archives: front-end

Phỏng vấn đại ca Huy Trần – Kĩ Sư Mặt Tiền tại xứ sở độn Silicon

Có thể bạn chưa biết, nếu làm lập trình viên, bạn có rất nhiều cơ hội được phiêu diêu nơi xứ người, thông qua nhiều con đường khác nhau (đi onsite, tự xin việc làm, v…v).

Kì trước, mình đã phỏng vấn anh Tiger Nguyễn, một BrSE “cứng cựa” với hơn 5 năm kinh nghiệm. Kì này, chúng ta cùng trò chuyện với anh Huy Trần (không Truồng), tác giả của blog Phun-Sờ-Nắc Developer, hiện anh đang là một front-end engineer cho một công ty start-up ở Silicon Valley.

Hãy cùng lắng nghe những chia sẻ rất cụ thể, chi tiết và có tâm về con đường phỏng vấn, xin việc bên Mĩ, cùng những điều hay ho khi làm việc nơi xứ người từ anh Huy nhé!

Continue reading Phỏng vấn đại ca Huy Trần – Kĩ Sư Mặt Tiền tại xứ sở độn Silicon

JS Truyền Kì – Chương 2: Võ lâm dậy sóng

Mục lục

Tóm tắt phần trước: JavaScript ban đầu bị xem là một ngôn ngữ “cùi bắp” ở client side. Với sự ra đời của AJAX và jQuery, JS bắt đầu được sử dụng nhiều hơn 

Hồi thứ tư – Thời đại hậu Ji Qui

Trước đây, hầu hết developer ở server side đều viết được chút ít JS ở client side. Sau này, JS được dùng để xử lý DOM, validate data, truyền nhận dữ liệu từ server. Việc này làm developer phải bỏ nhiều thời gian để code JS ở client side hơn. Vì lẽ đó, giang hồ dần phân hóa thành Tiền Tận Tông (Front-End developer) và Hậu Tận Tông (Back-end developer).

Continue reading JS Truyền Kì – Chương 2: Võ lâm dậy sóng

JS Truyền Kì – Chương 1: Lược sử giang hồ

Lời tựa

Javascript là một ngôn ngữ mạnh mẽ, được sử dụng ở rất nhiều nơi từ front end cho đến back end. Phàm là lập trình viên, hễ mang cái danh web developer đều phải biết chút ít JavaScript.

Vì lẽ đó, hôm nay tại hạ sẽ dùng phong cách kiếm hiệp pha lẫn hư cấu để kể dăm chuyện xưa về lịch sử JavaScript và đánh giá chung về tình hình JavaScript hiện tại. Vì có một phần hư cấu nên các đạo hữu đọc xong nhớ kiểm chứng lại thông tin nhé.

Tác phẩm võ hiệp này bao gồm 3 chương, hoặc có thể dài hơn tùy hứng của tác giả:

Continue reading JS Truyền Kì – Chương 1: Lược sử giang hồ

Series JavaScript sida – Promise – Hứa thật nhiều thất hứa thật nhiều

Bài viết này sẽ giới thiệu về khái niệm promise và các ứng dụng của nó trong javascript. Promise được sử dụng khá nhiều ở cả front-end (AngularJS) và back-end(NodeJS), do đó nắm vững khái niệm này sẽ giúp bạn rất nhiều trong việc code và … trả lời phỏng vấn.

Lưu ý: Bài viết sử dụng nhiều ngôn ngữ 16+, khuyến phụ nữ dưới 18 tuổi và trẻ em có thai không nên đọc.

Continue reading Series JavaScript sida – Promise – Hứa thật nhiều thất hứa thật nhiều

Series JavaScript sida – Cùng làm quen và “chịch”, nhầm… nghịch ES6

Dạo gần đây mình đi làm thêm, project hiện tại có sử dụng React với cả ES6 – chuẩn Javascript mới. Do mấy bài viết trước mình chê JavaScript sida nhiều thấy cũng tội, hôm nay viết một bài nói tốt cho nó một tí để đổi gió nhé.

Phiên bản JavaScript hiện tại chúng ta đang sử dụng dựa trên chuẩn ECMAScript 5 (ES5). Hiện tại, JavaScript được sử dụng ngày càng nhiều, từ front-end cho đến back-end, điều này đòi hỏi sự cải tiến trong JavaScript (Nghĩ cũng đúng, cái ngôn ngữ sida thế mà code mấy hệ thống to to, code phức tạp thì để lâu chả banh chành ra à !!). Đó là lý do chuẩn ECMAScript 6 (ES6) ra đời, cung cấp 1 số tính năng mới cho JavaScript, đồng thời giúp code trở nên tường minh và dễ viết hơn.

Capture

Continue reading Series JavaScript sida – Cùng làm quen và “chịch”, nhầm… nghịch ES6

Ngày đầu đi code dạo nơi đất khách quê người – Phần 2

Định viết một bài thôi mà không ngờ dài quá nên phải chia làm 2 phần luôn. Nội dung phần 2 này sẽ chia sẽ một chút về technical, trải nghiệm khi pair-programming và ăn nhậu với team ;).

Đống code như đống *beep*

Nói chuyện con người đủ rồi, giờ nói chuyện technical một chút nào. Ứng dụng của team được xây dựng trên framework CampusM. Framework này là cũng tương tự Ionic Framework, hỗ trợ viết app di động kiểu hybrid-app bằng HTML, CSS, JavaScript. Vì nó khá mạnh, tích hợp được nhiều thứ nên được một số trường Đại học ở UK sử dụng, trong đó có trường mình. Ngày xưa, team sử dụng phiên bản 1 của framework (AEK 1) để viết các chức năng. Gần đây, framework ra phiên bản AEK 2 (Tích hợp React, Redux và ES6 khá hầm hố), một số chức năng mới lại viết bằng AEK 2. Thế là code chia ra làm “code cũ” và “code mới”, cái nào cũng đủ chuyện nhức đầu.

cpm

Continue reading Ngày đầu đi code dạo nơi đất khách quê người – Phần 2

Ngày đầu đi code dạo nơi đất khách quê người – Phần 1

Hôm trước, mình đã kể chuyện đi phỏng vấn xin… code dạo ở nước ngoài được khá nhiều bạn ủng hộ. Kì này mình sẽ kể về ngày đầu tiên đi code dạo và những đồng nghiệp trong dự án nhé.

Hôm đầu ngơ ngác

Như mình đã kể, chắc do thiếu người hay dự án đang cần gấp nên quy trình phỏng vấn và tuyển dụng diễn ra rẹt rẹt, mình vừa phỏng vấn sáng thứ 4 hôm 10/2 thì có offer ngay chiều hôm đó, và sáng thứ 5 hôm sau phải xách đít đi làm. Bọn bên này làm ăn cũng đàng hoàng, send sẵn một cái file PDF hướng dẫn cách liên hệ với admin request account, set vào các group. Do team cũng nhỏ nên trong file có ghi đầy đủ tên thành viên, chức vụ, sở thích (chắc để mọi người gần gũi với nhau hơn), đọc cũng khá là vui.

Capture
Danh sách thành viên trong team. Bé Alice là cái bé PV mình nhắc tới trong bài trước ý
Continue reading Ngày đầu đi code dạo nơi đất khách quê người – Phần 1

Series JavaScript sida – Bind, Call và Apply trong JavaScript

Để hiểu rõ về các hàm được đề cập trong bài viết này, các bạn nên ôn lại chút kiến thức về object trong javascriptđít (this) trong javascript nhé. Như đã hứa, trong bài này mình sẽ giới thiệu bộ 3 function bind, call ,apply. Đây là 3 hàm tạo nên sự mạnh mẽ và bá đạo của JavaScript.

Trói đít (this) lại bằng bind

Bind là một hàm nằm trong Function.prototype, do đó chỉ có function mới có khả năng gọi nó. Như đã nhắc tới trong bài viết về this, bind được dùng để xác định tham số this cho một function.

1

Continue reading Series JavaScript sida – Bind, Call và Apply trong JavaScript

Series Javascript sida – OOP trong JavaScript

Trước khi xem bài này, các bạn nên ôn lại kiến thức bằng cách xem lại 2 bài viết về objectprototype trong series JavaScript sida. Trước khi phân tích về OOP trong JavaScript, mình sẽ nhắc lại sơ 1 số khái niệm trong OOP. Bạn nào quên rồi có thể lên wiki xem lại nhé: https://vi.wikipedia.org/wiki/Lập trình hướng đối tượng.

Trong phạm vi bài viết, ta sẽ bàn về 3 đặc tính của OOP, so sánh cách hiện thực chúng trong Java và JavaScript. Vì Wiki có sẵn rồi nên mình chỉ copy vào thôi, không giải thích lại lòng vòng nhé:

Continue reading Series Javascript sida – OOP trong JavaScript

Chuyện đầu năm – Lần đầu đi phỏng vấn xin việc nơi đất khách quê người – Phần 2

Nối tiếp phần 1, bài viết này sẽ kể về quá trình làm bài test và phỏng vấn, xin việc code dạo của chàng coder xấu số tên Hoàng.

Diện đồ nghiêm túc, lên đường

Mồng 3 Tết, ngày 10/2/2015, trong khi bạn bè ở Việt Nam đang vui vẻ ăn Tết, thoải mái vui chơi đập phá ăn nhậu thì mình phải đi phỏng vấn. Do tối hôm trước ôn kiến thức tới khuya, lại lo lắng hồi hộp nên đến tận 2h mình mới ngủ được. Cũng may buổi sáng mình dậy sớm nổi, chẳng muốn ăn nhưng cũng ráng nuốt để buổi trưa khỏi đói.

Nghe nói bọn bên này formal lắm nên mình cũng không dám mặc style Steve Job áo thun quần jean như thường lệ để đi phỏng vấn. May mà có mang theo 1 bộ vest với đôi giày Tây nên mình cũng có mặc được bộ đồ khá tươm tất. Lịch hẹn là 10h30, mình ra đến tòa nhà ISS lúc 10h25 rồi báo với lễ tân. Chả hiểu các bạn ấy bận hay sao mà tới 10h35 hơn mới có 1 thằng ku xuống dắt mình lên làm test.

Tòa nhà ISS chỗ mình phỏng vấn, trường màu đỏ mà chơi cái tòa nhà đen thui
Tòa nhà ISS chỗ mình phỏng vấn, trường màu đỏ mà chơi cái tòa nhà đen thui

Ku này cũng khá trẻ nhưng trộng hơi dị. Dáng cao, người thon gầy, đeo kính, mặt ngô ngố, đúng kiểu nerd/otaku thường gặp (Lớp mình cũng có một thằng tương tự). Thằng ku dắt mình lên tầng 3, vào 1 căn phòng nhỏ cũng khá xinh, có 2 cái laptop đặt đối diện nhau. Chẳng lẽ đề test là solo mid Dota hay Lol với nó, có 20 phút làm sao đủ?

Continue reading Chuyện đầu năm – Lần đầu đi phỏng vấn xin việc nơi đất khách quê người – Phần 2