Php là front-end hay back-end

Cùng là lập trình viên, tại sao cần phân biệt giữa Front hay Back, bởi vì lựa chọn khác nhau thì sẽ tới việc những thứ cần học sẽ khác nhau. Do đó chúng ta sẽ quyết định cái cốt lõi cần và sẽ học thêm cái gì để áp dụng vào công việc được.

Bài viết này sẽ tổng hợp những thông tin bạn cần đọc để làm sáng tỏ những thắc mắc trên con đường lập trình của bản thân:

Front end khác back end thế nào?

Một định nghĩa đơn giản về front-end và back-end đó là

Frontend Dev là việc xây dựng về phần nhìn của trang web, tập trung vào phát triển xây dựng giao diện và trải nghiệm cho người dùng
Back end Dev là cách để trang web đó hoạt động, xử lý mọi logic nghiệp vụ phức tạp ở ẩn ở phía sau, giúp cho hệ thống chạy ngon.

Front end là gì?

Ngôn ngữ lập trình

Các nhà phát triển Frontend chủ yếu sử dụng ba ngôn ngữ: HTML, CSS, Javascript. Mấy năm trở lại đây, vai trò của frontend dev đã nâng cao, nên cũng cần có kiến thức về cách sử dụng các framework ví dụ như React. Các bạn có thể tham khảo các framework/thư viện khác như

  • Một số thư viện/framework nổi tiếng: Bootstrap, jQuery, AngularJS, React JS, Vue JS, EmberJS...
  • Kĩ năng thiết kế, sử dụngPhotoshop. Kiến thức và kinh nghiệm về UI/UX.
  • LESS, SASS (stylesheet language).
  • Sử dụng npm, grunt, … để optimize, minimize HTML/CSS/JS.
  • Kiến thức về Ajax, cách thiết kế giao diện responsive …..

Các nhà lập trình cuối cùng cần phải thành thạo các ngôn ngữ lập trình hiển thị ở phía máy chủ của trang web hoặc ứng dụng. Các ngôn ngữ lập trình phụ trợ phổ biến nhất là PHP, Ruby, Python, Node.js và Java. Đồng thời cũng sẽ cần thành thạo làm việc với các cơ sở dữ liệu như MySQL, Oracle và SQL Server.

Bạn có thể tham khảo Lộ trình học tập chi tiết cho lập trình viên front-end năm 2020

Có nhiều vị trí công việc khác nhau cho các lập trình viên front end. Điều quan trọng cần nhớ đấy là ở mỗi công ty sẽ có mô tả công việc khác nhau, vì vậy tốt nhất là luôn hiểu rõ về vai trò cụ thể đó đòi hỏi gì. Tìm kiếm các chức danh công việc sau đây trong quá trình tìm việc của bạn:

  • Lập trình Front End
  • Thiết kế website
  • UI/UX Designer

Các nhà thiết kế giao diện người dùng tập trung vào các khía cạnh trực quan của thiết kế trang web trong khi các nhà thiết kế UX thực hiện nhiều trải nghiệm người dùng để đảm bảo trang web hoạt động tốt với tiện ích người dùng.

Thu nhập thì sao?

Xét về mặt kinh nghiệm nghề nghiệp, mỗi level sẽ có rank lương hay thu nhập khác nhau. Theo PayScale, mức lương khởi điểm trung bình trên thế giới cho các lập trình viên front end là khoảng $69,000/năm. Mức lương dao động từ khoảng $42,000- $ 108,000 dựa trên kinh nghiệm, địa điểm và ngành. 

Tại Việt Nam, sự dao động hay chênh lệch trong mức lương của một lập trình viên frontend phụ thuộc vào yếu tố vị trí địa lý, thời điểm hay lĩnh vực làm việc. Theo careerbuilder mức thu nhập trung bình các vị trí dao động từ 12,6 triệu - 21,6 triệu/tháng

Php là front-end hay back-end

Lập trình viên back-end?

Ngôn ngữ cần học

Bạn nên bắt đầu với Cấu trúc dữ liệu và giải thuật (thuật toán) để rèn luyện tư duy. Đồng thời, bạn cần thành thục các ngôn ngữ phía server và các thao tác cần làm với cơ sở dữ liệu:

  • Ngôn ngữ: C#, Java, Python, Ruby,...
  • Kiến thức về những web framework: ASP.NET MVC, Spring, Django, Rails …
  • Kiến thức về database: MS SQL Server, MySQL, …
  • Kiến thức chung về web, cách viết Web Service, cách đăng nhập và phân quyền.
  • Kiến thức về 1 số CMS: WordPress, Joomla, Umbraco, ….
  • Kiến thức về SEO, tool,...

Lời khuyên là, các bạn nên tập trung vào 2-3 ngôn ngữ chính, cần học có cấu trúc, có tư duy logic, dễ cải tiến và mở rộng kỹ năng. Lộ trình toàn tập cho back-end Developer năm 2020 sẽ cho bạn cái nhìn từ tổng quan tới chi tiết cho sự nghiệp này.

Thu nhập cao hay thấp?

Cùng với kiến thức khổng lồ phải trau dồi thì cơ hội việc làm của backend Developer cũng là đa dạng và không giới hạn.

Mức thu nhập cũng từ đó mà rất mênh mông. Theo PPayScale, mức thu nhập trung bình của 1 lập trình viên back-end trên thế giới rơi vào khoảng $101,000/năm, nhiều hơn front-end khoảng $30,000. Mức trung chung cho các level từ junior tới senior vào khoảng Từ $100,000 - $140,000/năm.

Câu hỏi đặt ra là ở Việt Nam, mức thu nhập của lập trình viên back-end là bao nhiêu? VietnamSalary trả lời rằng là theo level từ fresher cho tới senior, mức trung bình vào khoảng 14,8 triệu - 23,2 triệu/tháng, nhỉnh hơn mức trung bình của lập trình viên frontend.

Php là front-end hay back-end

Chọn sự nghiệp back-end hay front-end?

Trở thành một developer chuyên nghiệp là chuyện không hề dễ như mọi người vẫn tưởng, bởi lượng kiến thức cần để trở thành lập trình viên là vô cùng mênh mông. Không những tinh thông các ngôn ngữ lập trình, người làm lập trình còn nhạy bén về những công nghệ mới để hỗ trợ trong công việc như Google API, các IDE mới tốt hơn,… Chính vì vậy mà bạn cần có một tư duy tốt, một lộ trình học tập rõ ràng và có định hướng càng cụ thể càng tốt. Lời khuyên để bạn cân nhắc về việc lựa chọn hướng đi cho mình. Công bằng mà nói, làm lập trình viên backend sẽ có đôi ba phần phức tạp hơn frontend. Một vài lời khuyên cho các bạn:

  • Tìm hiểu về Front-end, việc bắt đầu học lập trình web từ back-end sẽ rất khó khăn đối với người mới bắt đầu. Vậy nên, khởi động từ HTML và CSS để cấu trúc một website tĩnh đơn giản, bạn mất khoảng 2-3 tháng để thành thạo kỹ năng, kế tiếp là những xử lý trên website và bạn cần phải học thêm về Javascript hoặc Jquery và các frameworks.
  • Làm quen với tư duy lập trình, thuật toán trong code. Bồi đắp kiến thức lập trình của mình từ level rất cơ bản, sau đó tìm cách giải quyết những vấn đề nhỏ xung quanh, đặt nó vào bối cảnh, như mảnh ghép hình. Dần dần bạn sẽ nhìn ra được bức tranh toàn cảnh
  • Sau khi bạn đã có thể tư duy về code tốt hơn, bạn bắt đầu học những ngôn ngữ lập trình back-end như PHP, .NET hay Java, thực tế những ngôn ngữ này cũng có thể xử lý 1 phần ở Front-end, tuy nhiên thường các lập trình viên Full-stack chuyên nghiệp không làm như vậy, bởi mỗi ngôn ngữ đều có điểm mạnh riêng về cần được sử dụng hợp lý thì mới có thể tạo ra website hoàn hảo.
  • Cuối cùng là bạn cần làm quen với cách quản trị dự án (nếu có cơ hội) và sử dụng những dịch vụ từ Google API hoặc những Service khác để tích hợp cho website của mình.

Tạm kết

Với những so sánh và đánh giá cũng như các bước đi cụ thể mà mình đã tổng hợp và phân tích, hi vọng sẽ giúp các bạn có cái nhìn đa chiều về con đường mình đã chọn. Tốt hơn hết, để phát triển bản thân toàn diện, bạn nên đi theo con đường nắm chắc kiến thức cơ bản, cập nhật liên tục và trở thành một lập trình viên fullstack. Chúc các bạn thành công.