thắc mắc Về Backend và các ngành nhỏ xung quanh

Chào các bác,

em có suy nghĩ này về cái Backend:

Backend kiếm việc dễ vì nhu cầu xây app cho API từ các bên như Data Engineer, C++ dev như mấy người làm Game, làm Trading, rồi xây app cho mấy người làm AI

em tra trên mạng hết các web, itviec, topcv, vietnamworks, vnindeed, topdev thấy lương jobs của backend nhiều nhất.

Nhưng mà nhiều lúc đi làm 1 năm mà trình độ không tăng lên mấy, kiểu thợ code vì không gặp vấn đề khó mấy, vì sản phẩm có của nó trải rộng từ app dễ - app khó (app cho outsource thì dễ, app của cty product thì khó, app cho ít người dùng dễ, app nhiều người dùng thì khó).

Còn nếu các ngành đặc thù kia thì mình sẽ dễ master được các tool, ví dụ DE học database, spark, hadoop, kafka, gg bigtable, python hay AI là pytorch, tensorflow, keras, python.... do cứ làm đi làm lại các tool này thui

Còn backend ví dụ làm outsource thì nay dùng các framework của java, dự án khác lại dùng C#, rồi nodejs, golang... Thì nhiều lúc mình ko master một cái gì cả

Suy ra các ngành đặc thù thì khó hơn, nhưng độ khó lại hẹp hơn backend

Em miêu tả hơi khó hiểu nhưng đại khái là:

backend có app độ khó 1,2,3,4,5,6,7,8,9,10

các cái khác chỉ có mức khó là 5,6,7,8,9,10

Như vậy mình làm backend ở một công ty với app ở mức độ khó là 1,2,3 thì mình sẽ khó có kiến thức để apply vào được các công ty mức độ khó 4,5,6.

Còn các cái kia thì xuất phát là 5, cộng với nhân lực không nhiều như backend thì sẽ có nhiều cơ hội để vào mức 6,7,8 hơn, lương hình như cũng cao hơn

E ko biết nghĩ vậy đúng hay sai, các bác nghĩ sao, thông não cho e phát
 
Mình làm BE 3 năm nhưng chỉ thấy khổ nhất là trong 3 tháng đầu để làm quen với data flow, và framework của ngôn ngữ đó. Như mình chỉ cần nắm đc pattern controller-service-repository-model của Java spring, biết đc chỗ nào nhận request, chỗ nào validator, chỗ nào xử lý exception, chỗ nào code business logic, chỗ nào gọi DB. Nắm đc bao nhiêu đó nên từ tháng 4 đến giờ đã 3 năm rồi thật sự phải nói là mình làm khá nhàn, thậm chí còn có thời gian làm job phụ nữa :D nhìn qua bên DE DA thấy một nùi tool tiếc, Concept thấy mà phát hoảng. Và mình công nhận là BE dễ hơn DE ít nhất ở chỗ công việc BE hầu hết là lặp lại và dùng 1 chuẩn data flow chung, ngay cả data flow cũng đc các framework xử lý rất tốt rồi :D. Đấy là mình đang nói BE thuần chứ không nói BE kiêm devops nhé.

Cho nên giờ mà bảo mình từ BE nhảy qua DE chắc mình cũng khóc, vì có thể sẽ bị ngợp về độ khó
Mà thôi, lương cao thì làm, lo nghĩ gì xa:D

Gửi từ Sony G3416 bằng vozFApp
 
Mình làm BE 3 năm nhưng chỉ thấy khổ nhất là trong 3 tháng đầu để làm quen với data flow, và framework của ngôn ngữ đó. Như mình chỉ cần nắm đc pattern controller-service-repository-model của Java spring, biết đc chỗ nào nhận request, chỗ nào validator, chỗ nào xử lý exception, chỗ nào code business logic, chỗ nào gọi DB. Nắm đc bao nhiêu đó nên từ tháng 4 đến giờ đã 3 năm rồi thật sự phải nói là mình làm khá nhàn, thậm chí còn có thời gian làm job phụ nữa :D nhìn qua bên DE DA thấy một nùi tool tiếc, Concept thấy mà phát hoảng. Và mình công nhận là BE dễ hơn DE ít nhất ở chỗ công việc BE hầu hết là lặp lại và dùng 1 chuẩn data flow chung, ngay cả data flow cũng đc các framework xử lý rất tốt rồi :D. Đấy là mình đang nói BE thuần chứ không nói BE kiêm devops nhé.

Cho nên giờ mà bảo mình từ BE nhảy qua DE chắc mình cũng khóc, vì có thể sẽ bị ngợp về độ khó
Mà thôi, lương cao thì làm, lo nghĩ gì xa:D

Gửi từ Sony G3416 bằng vozFApp
Thím cho em hỏi là trái ngành muốn làm DE thì ko có cửa hả
QCE4WlE.png
thấy hôm trước có thím nào bảo bắt đầu làm mà vào luôn DE thì bỏ đi cho đỡ phí time, làm 5 năm cũng chẳng lên được gì, còn ko phải đi làm FE rồi Be trước, xong rồi SE r mới nhảy qua DE được
soilzx9.png
 
Thím cho em hỏi là trái ngành muốn làm DE thì ko có cửa hả
QCE4WlE.png
thấy hôm trước có thím nào bảo bắt đầu làm mà vào luôn DE thì bỏ đi cho đỡ phí time, làm 5 năm cũng chẳng lên được gì, còn ko phải đi làm FE rồi Be trước, xong rồi SE r mới nhảy qua DE được
soilzx9.png
FE, BE thì có liên quan gì DE đâu mà phải có kinh nghiệm mới nhảy qua DE được? Hiểu đơn giản là DE ít job hơn so với BE, FE nhiều nên nếu ông trái ngành mà chuyển qua thì ít cơ hội hơn thôi.
 
FE, BE thì có liên quan gì DE đâu mà phải có kinh nghiệm mới nhảy qua DE được? Hiểu đơn giản là DE ít job hơn so với BE, FE nhiều nên nếu ông trái ngành mà chuyển qua thì ít cơ hội hơn thôi.
Em thấy bên Data ít thật, chủ yếu toàn mấy ông từ chuyên code nhảy qua làm data luôn chứ ít thấy tuyển Data sẵn cho frehser
eDEPIVR.gif
 
BE thì cũng làm task dùng tool đầy ấy mà, giờ BE nào chả phải dùng kafka, rabbitmq, nosql. Product to chút thì dùng spark, hadoop là bình thường ấy mà. DE với BE vốn dĩ nó gần nhau lắm rồi
 
Chào các bác,

em có suy nghĩ này về cái Backend:

Backend kiếm việc dễ vì nhu cầu xây app cho API từ các bên như Data Engineer, C++ dev như mấy người làm Game, làm Trading, rồi xây app cho mấy người làm AI

em tra trên mạng hết các web, itviec, topcv, vietnamworks, vnindeed, topdev thấy lương jobs của backend nhiều nhất.

Nhưng mà nhiều lúc đi làm 1 năm mà trình độ không tăng lên mấy, kiểu thợ code vì không gặp vấn đề khó mấy, vì sản phẩm có của nó trải rộng từ app dễ - app khó (app cho outsource thì dễ, app của cty product thì khó, app cho ít người dùng dễ, app nhiều người dùng thì khó).

Còn nếu các ngành đặc thù kia thì mình sẽ dễ master được các tool, ví dụ DE học database, spark, hadoop, kafka, gg bigtable, python hay AI là pytorch, tensorflow, keras, python.... do cứ làm đi làm lại các tool này thui

Còn backend ví dụ làm outsource thì nay dùng các framework của java, dự án khác lại dùng C#, rồi nodejs, golang... Thì nhiều lúc mình ko master một cái gì cả

Suy ra các ngành đặc thù thì khó hơn, nhưng độ khó lại hẹp hơn backend

Em miêu tả hơi khó hiểu nhưng đại khái là:

backend có app độ khó 1,2,3,4,5,6,7,8,9,10

các cái khác chỉ có mức khó là 5,6,7,8,9,10

Như vậy mình làm backend ở một công ty với app ở mức độ khó là 1,2,3 thì mình sẽ khó có kiến thức để apply vào được các công ty mức độ khó 4,5,6.

Còn các cái kia thì xuất phát là 5, cộng với nhân lực không nhiều như backend thì sẽ có nhiều cơ hội để vào mức 6,7,8 hơn, lương hình như cũng cao hơn

E ko biết nghĩ vậy đúng hay sai, các bác nghĩ sao, thông não cho e phát

Mình nghĩ là bác chưa đủ tầm nên hình dung được thôi. Nếu chỉ dev CRUD, dùng dăm ba cái tool ở mức đơn giản thì chắc đúng như bạn nói. BE độ khó từ 1 đến tầm 7 8 thôi. Start nhanh và kết thúc sớm như #2 trình bày.

Nhưng nếu scope rộng ra, BE có bao gồm cả việc thiết kế hệ thống flexible ? Đảm bảo HA ? Scalable ? Distribution ? Lúc này nó overlap lên JD của các title khác như SA, TA, DevOps, Infra,... thậm chí đôi lúc cả PM. Nói chung lên đến tầm này khá mơ hồ trong việc phân rõ title. Nếu bác nhìn rộng như này thì BE sẽ bắt đầu có độ khó 11 12 có khi lên đến cả 15 20, muốn khó bao nhiêu có bấy nhiêu.

Để dễ hình dung, bác có tưởng tượng được một Senior BE dev news feed cho Facebook sẽ làm công việc gì, liệu có phải code CRUD hay chỉ ngồi connect và sử dụng các tool thông dụng ? Chắc là không rồi. Đó chính là bác chưa đủ tầm nên không biết đến. Chả có công việc nào là có độ khó giới hạn cả. Chỉ có môi trường là giới hạn.

p/s: Mình cũng không biết ng ta làm gì đâu nha, mình cũng k đủ tầm :v
 
sao em tra roadmap thấy DE nó nhiều thứ linh tinh lắm mà bác :angry:

https://roadmap.sh/backend
https://github.com/datastacktv/data-engineer-roadmap
các roadmap này vừa dư vừa thiếu, roadmap của data thì bác làm trong BE product bự kiểu nào chả đúng hết. Điểm k giữa DE với BE ko phải là dùng cái tool gì , framework gì. Mà BE thì thiên về xử lí logic, nghiệp vụ, tăng tốc độ, đảm bảo duy trì ứng dụng. Còn DE thiên và phân tích data, xử lí data. tool dùng chung bấy bá đấy mà. thậm chí BE vẫn dùng tool của devops, deploy code ầm ầm đấy thôi. DE thì cũng là 1 công việc của BE à.
 
Mình nghĩ là bác chưa đủ tầm nên hình dung được thôi. Nếu chỉ dev CRUD, dùng dăm ba cái tool ở mức đơn giản thì chắc đúng như bạn nói. BE độ khó từ 1 đến tầm 7 8 thôi. Start nhanh và kết thúc sớm như #2 trình bày.

Nhưng nếu scope rộng ra, BE có bao gồm cả việc thiết kế hệ thống flexible ? Đảm bảo HA ? Scalable ? Distribution ? Lúc này nó overlap lên JD của các title khác như SA, TA, DevOps, Infra,... thậm chí đôi lúc cả PM. Nói chung lên đến tầm này khá mơ hồ trong việc phân rõ title. Nếu bác nhìn rộng như này thì BE sẽ bắt đầu có độ khó 11 12 có khi lên đến cả 15 20, muốn khó bao nhiêu có bấy nhiêu.

Để dễ hình dung, bác có tưởng tượng được một Senior BE dev news feed cho Facebook sẽ làm công việc gì, liệu có phải code CRUD hay chỉ ngồi connect và sử dụng các tool thông dụng ? Chắc là không rồi. Đó chính là bác chưa đủ tầm nên không biết đến. Chả có công việc nào là có độ khó giới hạn cả. Chỉ có môi trường là giới hạn.

p/s: Mình cũng không biết ng ta làm gì đâu nha, mình cũng k đủ tầm :v
thế giờ chỉ còn cách cày leetcode mới thay đổi được môi trường à :sad:
 
thế giờ chỉ còn cách cày leetcode mới thay đổi được môi trường à :sad:

Vừa đúng vừa không

Đúng là cày LC giúp bác giỏi hơn 1 chút mỗi ngày. Và nó cũng là điều kiện cần để bạn vào một số môi trường đặc biệt (như FAANG)


Không, là vì thật ra LC chả giúp phái triển năng lực chuyên môn quá nhiều, vì kém tính thực tiễn. Mà điều này mới là yếu tố chính để bác có được MÔI TRƯỜNG phát triển.

Vậy cần làm gì ?
  • Đi xin việc focus nhiều hơn vào môi trường thay vì lương. Hãy xem sếp có giỏi k ? Cty có nhiều bài toán khó k ? Thay vì đòi lương thật cao. Ví dụ bác xin vào 1 cty mà bác đánh giá là môi tr ok. Bác deal lương 10 củ và rớt. Hãy xin làm intern, fresher với mức lương 3 củ ở đó vì môi tr đáng giá hơn tiền bạc (không đùa).
  • Chỉ focus vào học hỏi. Giao task dễ quá k nhận. Làm xong task sớm xin sếp làm task khó hơn. Môi tr cùi quá hỏi sếp có cái gì khó hơn cho em làm không. Thay đổi mục tiêu là học đc tối đa từ môi trường hiện tại thay vì kiếm đc tối đa tiền.
  • Tự tạo ra môi trường. Cty k có thì về tự học thêm. Tự đặt target. Làm pet project. Muốn thì sẽ tìm đc cách

Tóm lại. Ngưng mê tiền mà hãy mê kiến thức. 1 năm cày sấp mặt với lương 5 củ đáng giá hơn 12 tháng nhàn hạ với lương 20 củ. Vì 3 năm sau lương bác sẽ là 100 củ thay vì 25 củ. Và kiến thức sẽ theo bác suốt đời.

via theNEXTvoz for iPhone
 
Vừa đúng vừa không

Đúng là cày LC giúp bác giỏi hơn 1 chút mỗi ngày. Và nó cũng là điều kiện cần để bạn vào một số môi trường đặc biệt (như FAANG)


Không, là vì thật ra LC chả giúp phái triển năng lực chuyên môn quá nhiều, vì kém tính thực tiễn. Mà điều này mới là yếu tố chính để bác có được MÔI TRƯỜNG phát triển.

Vậy cần làm gì ?
  • Đi xin việc focus nhiều hơn vào môi trường thay vì lương. Hãy xem sếp có giỏi k ? Cty có nhiều bài toán khó k ? Thay vì đòi lương thật cao. Ví dụ bác xin vào 1 cty mà bác đánh giá là môi tr ok. Bác deal lương 10 củ và rớt. Hãy xin làm intern, fresher với mức lương 3 củ ở đó vì môi tr đáng giá hơn tiền bạc (không đùa).
  • Chỉ focus vào học hỏi. Giao task dễ quá k nhận. Làm xong task sớm xin sếp làm task khó hơn. Môi tr cùi quá hỏi sếp có cái gì khó hơn cho em làm không. Thay đổi mục tiêu là học đc tối đa từ môi trường hiện tại thay vì kiếm đc tối đa tiền.
  • Tự tạo ra môi trường. Cty k có thì về tự học thêm. Tự đặt target. Làm pet project. Muốn thì sẽ tìm đc cách

Tóm lại. Ngưng mê tiền mà hãy mê kiến thức. 1 năm cày sấp mặt với lương 5 củ đáng giá hơn 12 tháng nhàn hạ với lương 20 củ. Vì 3 năm sau lương bác sẽ là 100 củ thay vì 25 củ. Và kiến thức sẽ theo bác suốt đời.

via theNEXTvoz for iPhone
Quân sư lại xúi bậy. 20 cũ nhàn hạ lại càng ngon. Tranh thủ mà làm job 2, job 3. Xúi nhỏ làm lương 5 củ. Mà thật chả có ai chả 20 củ mà ko làm gì cả đâu. giờ ra làm 5 củ thì cạp đất mà ăn à. Còn 3 năm sau là chuyện của 3 năm sau. Quận sự nghĩ quân sư làm 5 củ thì công ty nó giao cho quân sư cái system to bự hay là giao cho thằng lương 20 củ
 
ơ thế bình thường là ko cho làm à fen, tui tưởng là nếu pull request lên thấy ko ok, ko merge, thì có ảnh hưởng gì đâu fen
vậy thời gian thím làm task đó cty vẫn phải trả tiền, mà chưa chắc thím đã làm đươc, chưa kể cả 1 dự án biết bao là task, có thể nó k khó nhưng nó nhiều, cty trả tiền cho thím làm cái đấy chứ không phải trả cho thời gian thím ngồi research mà chưa chắc đã ra kết quả
 
nghe có vẻ thuyết phục nhưng hỏi thật bác liệu có cty nào để cho những người mà coi tầm level mới (intern,fresher,junior) động vào những task khó không ?

Có hay phụ thuộc vào bạn và thằng sếp. Bạn chia sẻ rõ là em muốn học hỏi, em cày cuốc ot xong sớm task với hy vọng e có cơ hội đc làm task khó hơn. Bạn k thể im im và đòi sếp tự hiểu đc.
Còn làm hết sức rồi mà sếp vẫn k hiểu thì tại sếp k ngoan. Đổi sếp thôi còn chờ gì nữa :sexy_girl::sexy_girl:

via theNEXTvoz for iPhone
 
Vừa đúng vừa không

Đúng là cày LC giúp bác giỏi hơn 1 chút mỗi ngày. Và nó cũng là điều kiện cần để bạn vào một số môi trường đặc biệt (như FAANG)
Học leetcode thì giỏi gì vậy? Giỏi thuật toán để phỏng vấn thôi không liên quan gì đến software development.

Tóm lại. Ngưng mê tiền mà hãy mê kiến thức. 1 năm cày sấp mặt với lương 5 củ đáng giá hơn 12 tháng nhàn hạ với lương 20 củ. Vì 3 năm sau lương bác sẽ là 100 củ thay vì 25 củ. Và kiến thức sẽ theo bác suốt đời.
Mơ à, lương cao toàn phỏng vấn thuật toán thôi, làm nhàn hạ , có thời gian luyện leetcode nhảy việc tăng hơn nhiều
 
Quân sư lại xúi bậy. 20 cũ nhàn hạ lại càng ngon. Tranh thủ mà làm job 2, job 3. Xúi nhỏ làm lương 5 củ. Mà thật chả có ai chả 20 củ mà ko làm gì cả đâu. giờ ra làm 5 củ thì cạp đất mà ăn à. Còn 3 năm sau là chuyện của 3 năm sau. Quận sự nghĩ quân sư làm 5 củ thì công ty nó giao cho quân sư cái system to bự hay là giao cho thằng lương 20 củ

Quân sư k hề xúi bậy. Theo kinh nghiệm và góc nhìn của quân sư là thế. Nhìn xa hơn sẽ có mục tiêu khác hơn. Các hạ có quyền k tin và k làm theo cũng k sao. Chúc các hạ luôn thành công :boss::boss:

via theNEXTvoz for iPhone
 
Back
Top