Top 5 kỹ năng của Developer chuyên nghiệp ”dắt túi”
Trong thời đại công nghệ 4.0, công nghệ thông tin đã và đang chiếm lĩnh tất cả các lĩnh vực của thị trường. Nhu cầu tuyển dụng cho những vị trí công việc thuộc ngành này đang ngày một tăng trong đó có Developer. Vậy Developer là gì? Những kỹ năng phải có cho vị trí công việc này? AMELA sẽ gửi đến cho các bạn đọc top 5 kỹ năng phải có khi muốn trở thành một Developer chuyên nghiệp. Các bạn có thể tham khảo các vị trí công việc dành cho DEVELOPER mà AMELA đang tuyen-dung Developer là gì? Developer hay còn được gọi tắt là DEV, một trong những tên gọi phổ biến của lập trình viên. Họ sử dụng các ngôn ngữ lập trình để thiết kế, xây dựng, bảo trì các chương trình phần mềm, ứng dụng cho máy tính hoặc điện thoại. Nói chung, Developer được coi là chìa khóa quan trọng cho mọi sự phát triển của một phần mềm hay ứng dụng. Công việc chính của một Developer là gì? Developer hay được hiểu sai với Coder hay Programmer. Thực tế, công việc Developer về chuyên môn vượt bậc hơn hẳn so với Coder hay Programmer. Họ có thể thiết kế và xây dựng một cấu trúc dữ liệu hoàn chỉnh nhất trong phần mềm. Công việc của một Developer bao gồm lập trình web, lập trình game, lập trình hệ thống, lập trình database. Dù lập trình gì thì Developer cũng có các nhiệm vụ chính như sau: Thiết kế và xây dựng một ứng dụng hoặc phần mềm mới Tiến hành việc duy trì và cải thiện các tính năng của ứng dụng hoặc phần mềm đó Developer phải có trách nhiệm sửa chữa các lỗi phát sinh để đảm bảo phần mềm hoặc ứng dụng hoạt động bình thường Nghiên cứu và phát triển thêm những ứng dụng công nghệ mới. 5 kỹ năng phải của một Developer chuyên nghiệp Để trở thành một Developer thành danh đòi hỏi rất nhiều các kỹ năng quan trọng như khả năng làm việc độc lập cũng như hoạt động nhóm tốt, tư duy logic, sáng tạo, quản lý thời gian,... Tư duy logic, sáng tạo: Để tạo ra một sản phẩm chất lượng đòi hỏi ở một Developer chuyên nghiệp phải có khả năng tư duy tốt, con mắt thẩm mỹ và sáng tạo. Cẩn thận và tỉ mỉ trong công việc: Làm việc với những dữ liệu, mã code đòi hỏi Developer cần cẩn thận, tỉ mỉ để tránh những sai sót dù nhỏ nhất trong quá trình làm gây ảnh hưởng đến chất lượng sản phẩm hay gián đoạn công việc. Khả năng làm việc độc lập cũng như hoạt động nhóm tốt: Luôn hoàn thành tốt các task được giao một cách độc lập, chỉn chu nhất. Đồng thời, với mỗi dự án, hoạt động teamwork diễn ra thường xuyên nên kỹ năng…
Xây dựng văn hóa doanh nghiệp phù hợp
Con người hình thành nên văn hóa và văn hóa nuôi dưỡng con người. Như vậy, con người và văn hóa luôn đồng hành với nhau, ảnh hưởng lên nhau. Nếu con người tốt sẽ tạo nên một văn hóa tốt và nếu được sống trong một nền văn hóa tốt sẽ giúp con người đó hoàn thiện bản thân mình. Ở bất cứ doanh nghiệp nào đều có văn hóa riêng và văn hóa đó sẽ là con dao hai lưỡi vô hình quyết định đến sự thành bại của doanh nghiệp. Nói một cách đơn giản, nếu coi doanh nghiệp là một con người thì xây dựng văn hóa doanh nghiệp sẽ tạo nên linh hồn của con người đó. Hiểu rõ vai trò quan trọng của văn hóa đối với doanh nghiệp, AMELA đã luôn cố gắng để xây dựng nên một văn hóa hiệu quả phù hợp với mô hình kinh doanh và hướng đi trong tương lai. Hôm nay, AMELA sẽ gửi tới các bạn một số bí quyết xây dựng văn hóa doanh nghiệp hiệu quả, phù hợp nhất với mỗi công ty. Văn hóa doanh nghiệp là gì? Theo định nghĩa được công nhận nhiều nhất, văn hóa chính là ‘’tập hợp những giá trị và chuẩn mực về niềm tin, hành vi, cách nhận thức và phương pháp tư duy được mọi người trong công ty cùng công nhận, suy nghĩ và hành động như một thói quen.’’ Như vậy, văn hóa doanh nghiệp giống như tích cách, đời sống tinh thần của con người chi phối đến hành vi và thái độ của người đó. Bộ phận xây dựng nên văn hóa doanh nghiệp Tầm nhìn (Vision) và giá trị cốt lõi (Values): Chính là kim chỉ nang dẫn đường cho những định hướng, kế hoạch, hành động trong mô hình kinh doanh của doanh nghiệp. Chính vì thế, xác định được tầm nhìn ngay từ bước đầu sẽ là ngọn đuốc dẫn đường cho sự phát triển của doanh nghiệp về sau. Yếu tố thực tiễn: Nói là phải làm, những tầm nhìn, giá trị chỉ là bề nổi quan trọng là thực tiễn có thể hiện được đúng những giá trị mà công ty, doanh nghiệp đó đặt ra hay không. Ví dụ thực tế như Viettel, slogan của họ là’’ theo cách của bạn’’ thì điều đầu tiên họ nên làm chính là việc lắng nghe những ý kiến, tâm tư, nguyện vọng của chính nhân viên của mình. Con người chính là yếu tố quan trọng Con người quyết định tầm nhìn, giá trị cốt lõi và phải có trách nhiệm thực hiện theo kim chỉ nang đó. Đó chính là lý do mà các doanh nghiệp có tầm luôn đưa chế độ tuyển dụng khắt khe để tìm được người phù hợp và có khả năng phát triển nền văn hóa đó. Theo nghiên cứu thì những ứng viên phù hợp với văn hóa doanh…
Hiểu rõ Hacker và bảo mật thông tin
Khi nhắc đến vấn đề bảo mật thông tin(BMTT), Hacker sẽ là đối tượng được đưa ra đầu tiên. Khi một Hacker đột nhập vào hệ thống bảo mật thông tin của tổ chức doanh nghiệp nhằm mục đích phá hủy, đánh cắp hay làm rò rỉ thông tin, dữ liệu sẽ đem lại hiệu quả vô cùng nghiêm trọng. Để ngăn chặn điều này, các tổ chức doanh nghiệp luôn có những chính sách về bảo mật thông tin, dữ liệu vì đó là tài sản vô cùng giá trị và quan trọng. Nhưng liệu mọi người đã hiểu rõ về Hacker, có phải tất cả các Hacker đều làm việc với mục đích không tốt? Bài viết hôm nay AMELA sẽ giúp mọi người hiểu rõ về Hacker và bảo mật thông tin được dễ dàng Hacker là gì? Phân loại Hacker Hacker là người hiểu rõ hoạt động của hệ thống máy tính, mạng máy tính, có thể viết hay chỉnh sửa phần mềm, phần cứng máy để làm thay đổi, chỉnh sửa nó với nhiều mục đích tốt xấu khác nhau. Dựa trên mục đích tốt xấu khác nhau, hacker được chia thành 2 kiểu chính là: White Hat(Hacker mũ trắng), Black Hat( hacker mũ đen). Ngoài ra, Grey Hat( Hacker mũ xám), Blue Hat( Hacker mũ xanh),...là những kiểu Hacker chưa được công nhận rộng rãi. White Hat ( Hacker mũ trắng) White Hat còn được gọi với cái tên Ethical Hacker là những Hacker có đạo đức, sử dụng những kỹ năng về lập trình, hiểu biết hệ thống để loại bỏ virus, giúp các tổ chức doanh nghiệp phát hiện ra lỗ hổng trong phần mềm, hệ thống bằng cách đột nhập vào nó. Họ hack vào hệ thống để khám phá ra các vấn đề bảo mật, trước khi kẻ xấu làm điều đó. Khi phát hiện ra vấn đề, Hacker sẽ báo cáo với tổ chức doanh nghiệp để tìm cách phá và sửa. Phần lớn White Hat đều có bằng cấp trong lĩnh vực an toàn công nghệ thông tin hoặc khoa học máy tính như chứng nhận phổ biến nhất là CEH (Certified Ethical Hacker) từ EC-Council. Cơ hội nghề nghiệp cho những White Hat rất nhiều như kỹ sư an ninh mạng, chuyên gia phân tích malware, cao hơn nữa là CISO (Trưởng phòng bảo mật thông tin),...Họ sẽ sử dụng những kiến thức nâng cao, chuyên sâu của mình về các phần mềm độc hại, virus, các cuộc tấn công DoS, DDoS và những mối đe dọa trực tuyến khác để vô hiệu nó, bảo mật thông tin và dữ liệu. Black Hat( Hacker mũ đen) Black Hat còn được biết đến là các Cracker, họ dùng những kiến thức của mình học được về hack với những mục đích xấu. Họ thường tìm những ngân hàng, tổ chức, công ty có hệ thống bảo mật kém, lấy cắp tiền hoặc thông tin thẻ tín dụng. Các…
Hiểu rõ công việc IT Comtor, BrSE, JQC trong các công ty offshore thị trường Nhật Bản
Khi thuật ngữ ‘’Offshore thị trường Nhật Bản’’ ra đời thì các thuật ngữ chỉ công việc, cụ thể là IT Comtor, BrSE, JQC cũng xuất hiện. Các bạn học chuyên ngành tiếng Nhật có hứng thú với IT và đang hướng tới chuyên ngành này liệu đã phân biệt được chính xác và cụ thể về nghiệp vụ và kỹ năng của từng loại công việc này chưa. Nếu chưa hay không rõ thì hãy cùng Amela tìm hiểu nhé! I. IT comtor, BrSE, JQC là gì? IT Comtor IT Comtor là thuật ngữ chỉ phiên dịch viên tiếng Nhật chuyên về lĩnh vực công nghệ thông tin (IT). Comtor là viết tắt của từ Communicator, nghĩa là người truyền tin, người truyền đạt. Nói ngắn gọn, IT Comtor chính là nghề phiên dịch tiếng Nhật chuyên ngành IT. Ngoài ra, thuật ngữ này cũng được dùng để chỉ các phiên dịch viên thực hiện phiên dịch trong nhiều ngành/ lĩnh vực khác. BrSE BrSE hay còn gọi kỹ sư cầu nối (Bridge system engineer) là người đóng vai trò kết nối giữa khách hàng và project team. Họ là người sử dụng tốt kỹ năng giao tiếp, nghiệp vụ về kỹ thuật của mình để giúp cho quá trình trao đổi giữa bên khách hàng và project team được thực hiện một cách thuận lợi, hướng đến kết quả cuối cùng là bàn giao dự án thành công, đem lại sự hài lòng đến với khách hàng. QA QA (Quality Assurance) là người chịu trách nhiệm thực hiện công việc kiểm tra chất lượng phần mềm bằng tiếng Nhật để hoàn thành các yêu cầu chất lượng được chấp thuận bởi khách hàng hay bên liên quan trước khi công việc dự án được bắt đầu. Ngoài ra, QA cũng thực hiện các công việc giống như QC nhưng sẽ chuyên sâu về tiếng Nhật hơn. II. Nghiệp vụ của IT Comtor, BrSE, QA Như vậy, IT Comtor, BrSE, JQC sẽ phải làm những công việc cụ thể như thế nào? IT Comtor: + Khi nhận được yêu cầu kèm với tài liệu kỹ thuật, IT Comtor sẽ chịu trách nhiệm dịch tài liệu cho các kỹ sư. Hỗ trợ họ tạo ra Estimate là chi phí ước tính mà khách hàng cần trả khi thực hiện các yêu cầu đó. + Phiên dịch cuộc trao đổi giữa hai bên như Q&A, những feedback diễn ra trong quá trình thực hiện yêu cầu đó. + Giải thích những mô tả, yêu cầu của khách hàng cho team project + Tham gia cuộc họp báo cáo tiến độ, và lưu lại biên bản họp. + Nắm bắt tiến độ để chủ động liên lạc với khách hàng khi xảy ra vấn đề không mong muốn. + Phương tiện liên lạc giữa khách hàng và IT Comtor thường là Email, mạng SNS nội bộ,... BrSE + Xác nhận, nắm rõ, triển khai các yêu cầu từ phía khách hàng. Làm hài…
Yêu cầu ”cơ bản” về dàn máy tính của dân IT
Dân IT có thể đơn giản chuyện ăn uống và ăn mặc nhưng nhu cầu về chất lượng cơ sở vật chất phục vụ cho công việc thì vô cùng cao. Dàn máy tính được ví như cái '' cần câu cơm'' cho dân IT, không chỉ cho công việc mà đôi khi dùng để giải trí sau giờ làm việc'' hack não''. Sau đây, AMELA sẽ chia sẻ cho mọi người một số yêu cầu'' cơ bản'' về dàn máy tính của dân IT Case máy tính Case là trái tim, là bộ não, là linh hồn của một chiếc PC. Một cái case với chip I7 - 4 nhân 8 luồng, xung nhịp tối đa 4.9 Ghz, kết hợp cùng ram 32GB có thể làm mọi thứ mà một lập trình viên cần. Với một chiếc case’’ xịn sò’’ thì android studio hay vài chục tab Chrome vẫn làm cho máy tình chạy mượt mà. Hơn nữa, nếu bạn lỡ tay tắt mạng thì cũng không cần lo lắng máy tụt FPS và xin thêm deadline vài ngày vì mở Android Studio nữa. Nhiều màn hình Một màn hình máy tính liệu có đủ cho một lập trình viên? Câu trả lời chắc chắn là không. Nếu có trên 1 màn hình máy tính các bạn có thể phân chia nhiệm vụ code cho từng màn hình. Nếu code Java ở màn hình này thì màn hình còn lại sẽ dành cho code SQL. Thứ tự truyền tham số thế nào đều có thể nắm bắt được nhanh chóng và dễ dàng hơn. Bài học được rút ra từ các lập trình viên’’ muốn code nhanh, dàn máy tính nên có hai hoặc ba màn hình’’ Bàn phím cơ và chuột Bàn phím cơ và chuột là một thứ cũng không thể thiếu được cho các lập trình viên. Tiếng kêu lách tách từ bàn phím được ví như sức hút của thỏi nam châm trái dấu. Càng gõ các bạn càng muốn gõ nhiều hơn nữa, khó mà dừng được. Không chỉ vậy, những bàn phím cơ đời mới còn tích hợp cả đèn led cùng chế độ led ảo diệu và đẹp mắt sẽ làm các lập trình viên chúng ta khó lòng mà từ chối. Cũng giống như bàn phím, chuột máy tính cũng có rất nhiều loại chất lượng. Một dàn máy tính cấu hình cao, đa màn hình đi kèm với một chú chuột Razer hoặc Logitech chắc chắn là điều lý tưởng cho các chàng trai, cô nàng công nghệ rồi. Tản nhiệt nước và đèn led Với một hệ thống như vậy, tản nhiệt là thứ không thể thiếu. Một bộ tản nhiệt tốt cho phép case luôn hoạt động trong trạng thái tốt nhất. Một trong những loại tản nhiệt khá được ưa chuộng là hệ thống tản nhiệt nước có đè. Với một case khủng thì nhiệt năng sinh ra trong quá trình hoạt…
Deal lương không khó, chỉ cần bạn dám thử
Có lẽ không cần phải nhắc lại sự quan trọng của đồng lương đối với cuộc sống của hầu hết chúng ta, trừ những người sinh ra đã ở vạch đích, đi làm vì “đam mê”. Nhiều người thậm chí còn coi “mức lương” là mục tiêu cao nhất khi tìm kiếm một công việc cho bản thân. Có lẽ trong một cuộc phỏng vấn xin việc, khi nhà tuyển dụng hỏi: “Bạn mong muốn điều gì ở công việc này?”, phần lớn chúng ta đều thầm nhủ trong đầu rằng “Tôi muốn một mức lương tốt”, tuy nhiên một số cách deal lương sẽ khiến mình mất điểm trong mắt đối phương. Câu hỏi đặt ra rằng: Chúng ta có nên đề cập tới lương, hay nói cách khác là “Deal lương” khi đi phỏng vấn không? Đáp án là có, nếu đây là một khía cạnh trong công việc mà bạn quan tâm. Nhưng tất nhiên, để deal lương một cách tinh tế và khéo léo, vừa đạt được mục đích mà vẫn không khiến việc deal lương trở thành điểm trừ cần một số những “tuyệt chiêu” quan trọng mà bạn cần vận dụng. Chuẩn bị trước không bao giờ là thừa Giá trị của bạn phụ thuộc và kỹ năng cá nhân, kinh nghiệm đã tích lũy và nhu cầu của thị trường. Để biết được mức lương phù hợp với bạn trong thời điểm hiện tại, bạn cần tìm hiểu xem các nhà tuyển dụng trên thị trường đang trả bao nhiêu cho các yếu tố trên. Bạn có thể bắt đầu nghiên cứu bằng cách tìm hiểu mức lương trung bình của ngành nghề bạn đang theo đuổi, dựa theo tên công việc và số năm kinh nghiệm làm việc. Bạn nên tham khảo tại ít nhất 3 nguồn tài liệu để tìm ra cho mình mức lương chính xác nhất. Ngoài ra bạn có thể hỏi bạn bè, người thân hoặc bạn của bạn bè đang làm cùng trong vị trí đó hoặc tìm các công việc tương tự như thế và xem các công ty khác đang trả bao nhiêu. Khẳng định giá trị bản thân và không so sánh Trả lương cho nhân viên là điều mà công ty nào cũng cân nhắc kĩ, do đó sẽ chẳng dễ dàng xảy ra việc bạn kì kèo thì họ sẽ đồng ý. Để họ có thể chấp nhận lời đề nghị của mình, bạn cần cho nhà tuyển dụng thấy bạn thật sự nổi bật và xứng đáng với mức lương mà họ phải trả, cụ thể thông qua bằng cấp, kinh nghiệm, kĩ năng,… Trong khi thỏa thuận lương, hãy tránh việc đưa ra những so sánh thiếu căn cứ để lý giải cho việc đề nghị lương của bạn như : “Tôi muốn lương của mình là $1000 vì anh A đang làm công việc này có mức lương như vậy!”. Bởi lẽ, trước hết, có thể cùng…
5 game luyện kỹ năng lập trình không thể bỏ qua
Ngưng dán mắt 24/24 vào chiếc màn hình code huyền thoại nhàm chán. Vì bạn có rất nhiều cách thú vị khác để nâng cao kỹ năng lập trình của bản thân, như vừa chơi vừa học chẳng hạn. Lựa chọn 1 trong 7 tựa game sau đây, bạn sẽ được phát triển khả năng lập trình một cách hay ho và nhanh chóng hơn nhiều. Codin Game Trong CodinGame, người tham gia sẽ phải bảo vệ con tàu của mình trước cuộc tấn công từ kẻ thù. Đạn sẽ được bắn ra khi người chơi gõ đúng dòng lệnh ở cột soạn thảo đặt bên cạnh. CodinGame mang đến một trò chơi giúp bạn có thể tìm hiểu hơn 25 ngôn ngữ lập trình, bao gồm JavaScript, Ruby và PHP. Một trong những điều hấp dẫn của game này là bạn có thể chơi với bạn bè hoặc đồng nghiệp, cũng như có thể tham gia cuộc thi viết code quốc tế. CodinGame được đánh giá là một trong những cách giúp nâng cao kỹ năng lập trình đơn giản và hiệu quả nhất. Để chơi game, người dùng không cần tải về hay cài đặt gì cả, mà chỉ cần mở trình duyệt và truy cập địa chỉ. Code Combat Game CodeCombat được tạo ra với mục tiêu ban đầu là dành cho giáo viên và sinh viên nhằm giúp việc tiếp cận với bộ môn công nghệ thông tin trở nên sinh động hơn. Nhưng nó cũng rất phù hợp cho những lập trình viên vừa mới bắt đầu học. Thông qua trò chơi những ngôn ngữ lập trình như Python, JavaScript, CoffeeScript… được truyền tải rất sinh động. Luật chơi khá đơn giản. Ở cấp độ cơ bản Dungeon, bạn sẽ phải di chuyển Hero của mình băng qua các chướng ngại vật bằng một số lệnh cơ bản. Qua mỗi vòng khác nhau mức độ khó của câu lệnh sẽ được tăng lên dần. Điều này càng làm bạn có động lực với thử thách kế tiếp. Codehunt Codehunt là một trò chơi có thể chơi bằng cách sử dụng ngôn ngữ lập trình Java hoặc C#, được thiết kế để dạy cho bạn các nguyên tắc cơ bản của bất kỳ ngôn ngữ nào bạn chọn, bắt đầu bằng huấn luyện, di chuyển qua các chủ đề như Loops và Strings, và kết thúc với những thử thách như Sorting, Cyphers và Puzzles. Điều thú vị về Codehunt là nó không cho bạn biết làm thế nào để giành chiến thắng ở mỗi thử thách mà bạn sẽ phải tự tìm ra, đây cũng là một yếu tố tăng sức hút của trò chơi. Elevator Saga Elevator Sage sẽ kiểm tra kỹ năng JavaScript của bạn bằng các thách thức như di chuyển thang máy hay vận chuyển người sao cho hiệu quả nhất. Trò chơi khởi động bằng nhiệm vụ vận chuyển 15 người trong khoảng thời gian dưới 1 phút. Flexbog Froggy…
UX/UI Designer – Người thiết kế công nghệ
Thiết kế là một thuật ngữ khá rộng và mơ hồ. Vì vậy khi ai đó nói “Tôi làm nghề thiết kế” chắc chắn nó không đủ thông tin để mô tả việc họ đang làm hàng ngày. Có vô vàn kiểu công việc liên quan tới thiết kế. Những gì cần thiết kế có thể nằm trong rất nhiều lĩnh vực, như thiết kế công nghiệp (xe, nội thất…) tới in ấn (tạp chí, và các ẩn phẩm…) tới công nghệ (webstie, mobile) và rất nhiều lĩnh vực khác. Những công ty công nghệ ngày càng nhiều và phải tập trung tạo ra những giao diện cho người dùng, và đương nhiên những kiểu công việc mới được tạo ra. Các chức danh như thiết kế UX (thiết kế trải nghiệm) hay UI Designer khá rắc rối để hiểu rõ ngay cả với những người thiết kế làm trong các lĩnh vực khác. Nào hãy cùng ráng sức để hiểu được công việc đằng sau mỗi chức danh của ngành công nghệ máy tính này. UX Designer (User experience designer) – Thiết kế trải nghiệm? UX Designer có nhiệm vụ tập trung chủ yếu vào việc Cảm giác sản phẩm này ra sao. Một vấn đề về thiết kế không chỉ có một câu trả lời hợp lý. UX designer tìm nhiều cách để tiếp cận nhằm giải quyết một vấn đề cụ thể của người dùng. Nhiệm vụ chính của UX designer là chắc chắn rằng quy trình logic của sản phẩm đi từ bước này tới bước kế tiếp. Một cách mà một người UX Designer hay làm là đóng vai một người dùng để quan sát cách người dùng… quan sát. Việc người dùng có nhận ra những khối hình, chữ, màu sắc.. họ xác định và lặp lại để tạo ra một cách trải nghiệm “Tốt nhất”. Một dự án ví dụ là việc tạo ra một quy trình tiếp cận cho một người dùng mới. " Xác định các mẫu sẽ dùng, các quy trình người dùng làm tác vụ, và nhận diện UI. Tương tác với các kịch bản, người dùng cuối cùng, tương tác với các mẫu thử, đưa các màn hình thiết kế với người chủ sản phẩm. Làm việc với giám đốc sáng tạo và người thiết kế thẩm mỹ để tạo ra một hình ảnh nhận diện của Twitter tương ứng với các tính năng. Phát triển và duy trì các công cụ thiết kế, mockup và những thứ cụ thể nếu cần. – Một mô tả công việc của chức danh UX Desigenr tại Twitter –" Những thứ có thể thấy: Wireframe của các màn hình, kịch bản, sitemap. Công cụ: Photoshop, Sketch, Illustrator, Fireworks, Invision Bạn có lẽ sẽ nghe thấy họ nói đâu đó: “Chúng ta nên cho người dùng thấy trang – Cám ơn bạn, Bạn đã hoàn tất việc đăng ký” UI Designer (user interface design) – Thiết kế giao diện Không như những người thiết…
Làm thế nào để phân biệt Front-End, Back-End và Full-Stack
Bạn mở một tab trình duyệt mới, gõ vào một địa chỉ URL, và nhấn enter. Trang web được tải ngay lập tức. Nó gần như làm bạn nín thở bởi layout gọn gàng, các trang được xây dựng tốt, và hình ảnh rất ấn tượng. Người chịu trách nhiệm cho mọi phần của trải nghiệm đó là ai? Đó chính là các nhà phát triển web. Tính đến tháng 11 năm 2014, thế giới Internet chứa hơn 680 triệu trang web. Và đang ngày càng tăng lên. Hôm nay chúng ta sẽ nói về một số công việc đối với các lập trình viên web, những người chịu trách nhiệm cho việc lập trình, xây dựng, phân tích, và duy trì tất cả những trang web đó. Các trang web giờ đây là một thành phần quan trọng cho bất kỳ doanh nghiệp nào để có thể cạnh tranh trên thị trường. Các xu hướng phát triển web và những hiệu ứng tốt nhất thay đổi hầu như theo mùa, vì vậy các lập trình viên không bao giờ lo thiếu việc. Làm thế nào để phân biệt Front-End, Back-End và Full-Stack trong phát triển web? Nhưng làm thế nào để biết chính xác có những loại công việc phát triển web nào để tìm kiếm và đào tạo? Nếu bạn dạo quanh các trang web việc làm hoặc duyệt qua các khóa học trực tuyến, bạn có thể biết rằng phát triển web được chia nhỏ thành 3 mối quan tâm chính: front-end, back-end, và full stack. Nếu bạn đã biết qua HTML, JavaScript, hoặc có thể một chút Python, nhưng bạn không chắc chắn lắm về con đường để đi tiếp, thì bài viết này là dành cho bạn. Các khóa học lập trình tại TechMaster sẽ cung cấp cho bạn những kỹ năng thực tế nhất để có thể xin được việc làm. Với nhiều mô hình đào tạo như online, offline, và FlipLearning... Lập trình viên Front-End Khóa front-end tại Techmaster Vietnam: https://techmaster.vn/khoa-hoc/25610/web-frontend-cho-nguoi-moi-hoc Phần front-end của một trang web là phần tương tác với người dùng. Tất cả mọi thứ bạn nhìn thấy khi điều hướng trên Internet, từ các font chữ, màu sắc cho tới các menu xổ xuống và các thanh trượt, là một sự kết hợp của HTML, CSS, và JavaScript được điều khiển bởi trình duyệt máy tính của bạn. Các kỹ năng và công cụ Các lập trình viên front-end chịu trách nhiệm cho giao diện của một trang web và kiến trúc những trải nghiệm của người dùng. Để thực hiện được những mục tiêu đó, các lập trình viên front-end phải tinh thông 3 ngôn ngữ chính: HTML, CSS, và ngôn ngữ lập trình JavaScript. Ngoài việc thông thạo các ngôn ngữ đó, các lập trình viên front-end cần phải làm quen với các framework như Bootstrap, Foundation, Backbone, AngularJS, và EmberJS, để đảm bảo nội dung luôn hiển thị tốt trên mọi thiết bị khác nhau, và các thư viện như jQuery và LESS, đóng gói code…
Làm sao để handover dự án ?
Cách đây ít tháng mình chuyển việc, nhắc tới chuyển việc mình nợ các bạn 1 bài về chủ đề “làm sao để nhảy việc ở Nhật”. Vừa vào chân ướt chân ráo đã được (bị) hù là cho ướt cả … 3 chân. Mấy tháng rồi mình không viết bài được cũng vì vụ này, vừa phải làm quen môi trường – đồng nghiệp – sếp – dự án – qui trình … tất cả đều mới toanh. Cho đến thời điểm hiện tại mọi thứ có vẻ khá hơn 1 chút, “lửa” bắt đầu nhỏ dần và đoàn tàu tiếp tục lăn bánh, đích còn xa nhưng bản thân mình đã kịp ngồi chung vs anh em trên cùng 1 toa, giờ là thời điểm nhìn lại, đánh giá và tự nghĩ ra giải pháp cho giai đoạn tiếp theo – mà các bác nhật hay gọi là furikaeri(振り返り). Giải thích sơ sơ về handover cho các mem còn sinh ziên. Tiếng nhật là hikitsugi 引き継ぎ, tiếng việt là … gắp lửa bỏ tay người … ah mà chả biết tiếng việt gọi là gì. Đại khái có 1 mem đang làm thì nghỉ – có lý do chính đáng hoặc không, nói chung là ko còn tiếp tục, sẽ có 1 khoảng thời gian để truyền đạt nội dung công việc cũng như các vấn đề mà dự án đang gặp phải cho người tiếp nhận (mình là người tiếp nhận trong hoàn cảnh này). Khoảng thời gian này dài hay ngắn cũng phụ thuộc nhiều yếu tố, nếu dài thì tốt, còn ko thì cũng phải chấp nhận chứ biết sao được. Nội dung truyền đạt lại cũng thế, nếu ông nào kỹ tính thì đưa nhiều, ông nào vớ vẩn thì nói qua loa, còn những bạn có tâm thì ngoài nội dung công việc cần làm ra còn chỉ cho người sau biết chỗ này chỗ kia đang cháy to, chỗ nọ ngập nước. Đấy là về mặt công việc, còn mặt con người – nhân sự nữa, phải tính hết trong khoảng thời gian có hạn. Vậy phải làm răng, đang lúc căng mà cứ đòi đi nha sĩ hoài … Có mấy cái gạch đầu dòng bên dưới. Về mặt công việc Phải lên danh sách những mục bắt buộc. Cấu trúc source Phần mình cần phải làm Cây thư mục tài liệu : dự án tổ chức tốt thì có cây, còn ko thì thành 1 bãi … cũng phải lo hốt cho hết ? chia buồn Arsenal Danh sách những tài liệu bắt buộc phải đọc (trong 1 mớ hỗn độn phải chỉ ra chứ hem có thời gian nhai hết) Account login system : có nhiều loại, cái này tuỳ dự án – công ty – khách. Thể chế vận hành : có mấy bên tham gia, công ty nào, phụ trách cái gì. Mình làm gì trong đó. Qui trình dự án : cái này nghe hơi to…
Những nguyên tắc cơ bản của BrSE
Khi phát hiện ra hệ thống cần có thêm chức năng abc, nếu nói cho khách hàng biết thì offshore sẽ nổi khùng vì phải overtime, mà không nói thì khách hàng cũng không biết, vậy nên nói không ? Khi khách hàng không chấp nhận estimate vì các bạn nghĩ quá cao, còn nếu giảm xuống thì bên phía nhà mình cho rằng quá thấp, thì phải làm thế nào ? Khi khách hàng yêu cầu điều tra 1 lỗi hệ thống mà phần này mình chưa từng làm bao giờ, từ chối thì sẽ bị đánh giá thấp, mà nhận nếu làm không được thì gay go nữa ? vậy phải làm sao ? Để trở thành 1 BrSE tốt thì trong quá trình làm việc hay mỗi lần đưa ra quyết định phải dựa trên nhiều nguyên tắc. Quyết định thì có thể đúng hoặc sai, nhưng 1 khi đã làm thì hãy dứt khoát, có sai thì mới có đúng – có dở thì sau này mới hay được.Có 3 nguyên tắc chính mà bản thân mình cho là quan trọng nhất. Nguyên tắc 1 : Nhìn sự việc trên view khách hàng Nhìn mọi việc với view của khách hàng ư? Tại sao lại vậy ? đơn giản “Khách hàng là thượng đế”, còn nếu bạn muốn làm thượng đế thì …Các cụ có câu “Thương nhau cau sáu bổ ba, ghét nhau cau sáu bổ ra làm mười”. Khi mà các bác khách hàng thương mình rồi mọi việc sau này nó dễ dàng vô cùng, làm đúng thì bị khen lấy khen để, mà sai nhỏ nhỏ thì cũng … xí xóa cho qua. Để các bác ấy thương thì phải chiều, chiều sao cho đúng? thì đơn giản là nhìn mọi việc trên view khách hàng sẽ hiểu ra được những mong muốn sâu xa mà các bác ko nói, hoặc đôi khi chưa nghĩ ra để nói. Dạo trước, có lần mình phát hiện ra 1 lỗi khá to trong FW của khách hàng (FW này phát triển dựa trên Struts và Spring), lúc này cực kỳ khó xử vì nếu sửa 1 phát thì sẽ phải test lại toàn bộ, anh em offshore Over Time vỡ mật luôn. Mình quyết định nói nhưng kèm theo điều kiện là xin cho mọi người nghỉ vài ngày xả hơi sau khi xong cái ấy. Kết quả là giai đoạn đó tuy căng thẳng nhưng đổi lại từ đó về sau FW chạy rất mượt mà, khách hàng hài lòng còn anh em ở nhà cũng thoải mái hơn rất nhiều. Đứng về phía khách hàng nhưng cũng phải nghĩ cho bên mình sao cho hài hòa Nguyên tắc 2 : Khách hàng không phải lúc nào cũng đúng Hãy luôn đặt nghi vấn Đối với người Nhật, họ luôn chỉn chu trong mọi quyết định, thường sẽ họp hành bàn bạc rất kỹ lưỡng, làm gì cũng có lý do hết. Nên nói…
BrSE là gì? BrSe cần học công nghệ gì?
Maintain Hiện tại các hệ thống quản lý nội bộ công ty – quản lý khách hàng thuộc các domain như y tế, giáo dục, ngân hàng … đang lạc hậu trầm trọng về mặt tính năng, tính tương thích nhưng để làm mới là việc quá rủi ro vì hệ thống quá lớn đã được vận hành hàng thập kỷ. Khách hàng Nhật có tính chắc ăn trong mọi việc nên thường họ chọn cách làm maintain hệ thống cũ, tức là làm mới giao diện người dùng, thêm 1 vài tính năng mới… Có nhiều ngôn ngữ nhưng 3 loại phổ biến nhất mà BrSE theo mảng maintain cần nắm. Java Khỏi cần nói nhiều vì Java quá phổ biến. Cobol Ngôn ngữ cũ ríc này hiện nay vẫn chưa tắt thở vì 1 lợi thế quá lớn về mặt performan. Và các hệ thống to đùng hầu hết tầng bên dưới đều dùng anh này. VB Một trong những ngôn ngữ lập trình hướng đối tượng ra đời sớm nhất, và được ứng dụng rộng rãi trong nhiều hệ thống quản lý nội bộ công ty. Và 1 điều mình cũng khá ngạc nhiên là đến bây giờ vẫn rất nhiều bác khách hàng thích VB, lý do có thể là do quen dùng. Migration Mảng này thường trải rất rộng. 1 hệ thống thường ứng dụng nhiều ngôn ngữ ở các tầng khác nhau vì mỗi loại có ưu nhược riêng. Ở tầng giao diện ASP, JSP, PHP khá phổ biến, còn tầng dưới (xử lý nghiệp vụ) thì Java, C#, VB. Về database thì có 3 ông lớn : DB2 (IBM), SQL, Oracle. Các chuỗi Migration thường gặp Java : từ các version cũ như 3,4 lên Java 7/8 ASP : từ ASP qua ASP.net, hoặc từ ASP.net version 2/3.5 lên ASP.net ver 4.5 VB (lại là VB) : từ VB4/VB6 lên VB.net hoặc từ VB.net ver thấp lên cao Database : DB2 hoặc Oracle qua SQL, hoặc Oracle/SQL từ ver thấp lên cao. Thời điểm hiện tại thì Oracle 11 vs SQL 2012 là 2 bản database ổn định và được chọn làm đích upgrade. Migration lên Cloud : đang cực kỳ HOT. Azure hoặc AWS là 2 dịch vụ mà bạn cần phải nắm vững nếu muốn nhảy vào mảng này. Mình nhắc lại thêm 1 lần nữa : nó rất rất hot – còn hơn cả Ngọc Trinh Development Phát triển mới hiện tại đang nhắm vào 3 mảng lớn : Web, Mobile và Embedded (lập trình nhúng). Thường đối với các dòng dự án phát triển mới thì BrSE sẽ tham gia từ design, vậy nên kỹ năng viết – trình bày tài liệu bằng tiếng nhật hay làm prototype (excel/html) quan trọng không kém ngôn ngữ – cộng nghệ. Làm develop sướng hơn so với maintain và migration. Maintain là công việc khá nhàm chán (quan điểm cá nhân), còn migration thì khá là căng thẳng – vì nó trải rộng làm BrSE phải xì khói ra đào sâu từng chi tiết nhỏ khác biệt giữa…