Live data from Hacker News

Ask HN: If you only do programming at work, how do you manage your career?

news.ycombinator.com

11–20 of 23 posts

Re: Ask HN: If you only do programming at work, how do you manage your career?

#11

You kind of hit the nail on the head. If you don’t want to constantly be on the treadmill, don’t focus on the front end. The further down the stack you go, the slower technology moves and the easier it is to stay relevant. Besides, just from looking around, front end pays less and it’s easy for most companies to find cheap “good enough” front end developers. As far as being “lucky”, it’s not luck. If I see my employe…

As a counterargument (or perhaps as a corollary), backend programming is also a treadmill these days. It may not have the churn of the world of front-end Web programming, but the world of backend programming in 2020 is quite different from that of 2010. As someone who does mostly backend work, within the past decade I've seen the rise of cloud services, non-relational databases, the Hadoop ecosystem, distributed storage systems, containers, the increased use of languages outside of C/C++/Java for systems programming (e.g., Python, Go, Rust, Clojure, Scala), machine learning, and CUDA, among many other technologies that were either nonexistent or were in their infancy in 2010. A person who stayed stuck in the world of 2010 might be overwhelmed by how much has changed in the past decade. Heck, even C++ has changed dramatically over the past decade; someone coding in C++98 would need to get up to speed with C++11's fundamental changes as well as changes added in later versions.

Now, there are some levels that haven't changed as much in the past decade. The kernels of today's most widely used operating systems are still written in C, and x86-64 still remains the dominant instruction set despite an increased challenge by ARM64 and the possibility of RISC-V. Someone writing kernel-level code in 2010 would feel at home today in 2020, notwithstanding the natural kernel code changes that have always happened. However, the job markets for kernel developers, compiler developers, and those writing low-level system software are much smaller than the job market for backend programmers overall, and it's possible that a laid-off low-level systems software engineer would have to get up to speed in all of the advances that happened in higher levels of the stack in order to more easily find another job.

Re: Ask HN: If you only do programming at work, how do you manage your career?

#12
I don't want to spend all my time honing one skill (programming). So I chose a job that is constantly challenging to keep me stimulated intellectually, and moved from frontend to backend/infra (took 18 months). Learning how to get up to speed with whatever technology being thrown at you is the skill one should develop, and not focus on specific framework or programming language per se, because they come.

Also, programming is not the only skill that will help you in your career as an engineer.

Re: Ask HN: If you only do programming at work, how do you manage your career?

#13

You can take risks on the job and learn as you go. If you have a good manager they will take your career goals into mind when deciding what you are doing on a per-sprint basis. A great manager will allocate sprint points to you exploring a new area of technology as long as you can somehow realize value for the business as a result of that exploration.

A fantastic manager doesn't make you assign points to your work to fit inside an arbitrary time box.

Re: Ask HN: If you only do programming at work, how do you manage your career?

#14
post #11

You kind of hit the nail on the head. If you don’t want to constantly be on the treadmill, don’t focus on the front end. The further down the stack you go, the slower technology moves and the easier it is to stay relevant. Besides, just from looking around, front end pays less and it’s easy for most companies to find cheap “good enough” front end developers. As far as being “lucky”, it’s not luck. If I see my employe…

As a counterargument (or perhaps as a corollary), backend programming is also a treadmill these days. It may not have the churn of the world of front-end Web programming, but the world of backend programming in 2020 is quite different from that of 2010. As someone who does mostly backend work, within the past decade I've seen the rise of cloud services, non-relational databases, the Hadoop ecosystem, distributed stor…

> As someone who does mostly backend work, within the past decade I've seen the rise of cloud services, non-relational databases, the Hadoop ecosystem, distributed storage systems, containers, the increased use of languages outside of C/C++/Java for systems programming (e.g., Python, Go, Rust, Clojure, Scala), machine learning, and CUDA, among many other technologies that were either nonexistent or were in their infancy in 2010.

You've missed what is maybe the worst offender - kubernetes and microservices.

Re: Ask HN: If you only do programming at work, how do you manage your career?

#16
post #11

You kind of hit the nail on the head. If you don’t want to constantly be on the treadmill, don’t focus on the front end. The further down the stack you go, the slower technology moves and the easier it is to stay relevant. Besides, just from looking around, front end pays less and it’s easy for most companies to find cheap “good enough” front end developers. As far as being “lucky”, it’s not luck. If I see my employe…

As a counterargument (or perhaps as a corollary), backend programming is also a treadmill these days. It may not have the churn of the world of front-end Web programming, but the world of backend programming in 2020 is quite different from that of 2010. As someone who does mostly backend work, within the past decade I've seen the rise of cloud services, non-relational databases, the Hadoop ecosystem, distributed stor…

My first professional programming job was in 1996. I was writing C for DEC VAX and Stratus VOS mainframes and reading about undefined and implementation defined behavior on Usenet in comp.lang.c. My second job three years later was writing C and C++ for Windows computers along with MFC and some standard cross platform C++ using the STL.

Recently, there was a blog post submitted on HN with “trick” questions in C where they ask you to describe what the output would be. I immediately recognized all of the code would result in undefined or implementation defined behavior. I call myself still keeping abreast of the latest C and C+ standards out of morbid curiosity even though I have used neither in over a decade, changes have been glacial compared to the front end.

within the past decade I've seen the rise of cloud services*

I know AWS pretty well, from the development, Devops, and even operations/networking side. I hate to be “that guy” but for the most part the cloud is just someone else’s computer where they manage databases, messages services, caching services, monitoring etc.

The largest changes in mindset were infrastructure as code, “cattle vs pets” and immutable architecture.

non-relational databases, the Hadoop ecosystem, distributed storage systems, containers,

Especially in the cloud, distributed storage systems is just an API call. NoSQL databases do require a change in mindset, but the world is still dominated by RDMS’s. In fact they are still dominated by the same three or 4 as they were in 2010 - SQL Server, Oracle, Mysql and Postgres. I’ve been going back and forth between Mysql and Sql Server for almost two decades and six jobs.

the increased use of languages outside of C/C++/Java for systems programming (e.g., Python, Go, Rust, Clojure, Scala)

Besides Python, you can still safely ignore all of those languages and just stick with C/C++, C# and Java and be good. Those were the same languages that were in demand when I (belated) jumped back in the job market in 2008. The other are all niche languages in the grand scheme of things. Go is starting to pop up more admittedly.

machine learning, and CUDA, among many other technologies that were either nonexistent or were in their infancy in 2010.

You can also safely ignore those and still be marketable.

As far as low level developers, the submitter seems to be a standard everyday “enterprise developer” (no insult intended , I am too). So low level code, CUDA and machine learning wouldn’t be relevant.

Re: Ask HN: If you only do programming at work, how do you manage your career?

#17
post #14
post #11

Earlier quoted context omitted.

As a counterargument (or perhaps as a corollary), backend programming is also a treadmill these days. It may not have the churn of the world of front-end Web programming, but the world of backend programming in 2020 is quite different from that of 2010. As someone who does mostly backend work, within the past decade I've seen the rise of cloud services, non-relational databases, the Hadoop ecosystem, distributed stor…

> As someone who does mostly backend work, within the past decade I've seen the rise of cloud services, non-relational databases, the Hadoop ecosystem, distributed storage systems, containers, the increased use of languages outside of C/C++/Java for systems programming (e.g., Python, Go, Rust, Clojure, Scala), machine learning, and CUDA, among many other technologies that were either nonexistent or were in their infa…

Kubernetes is not as big as the hype makes it out to be.

Microservices have been around for over a decade. They were called service oriented architecture and instead of REST with JSON they sending XML.

Re: Ask HN: If you only do programming at work, how do you manage your career?

#18
post #10

You kind of hit the nail on the head. If you don’t want to constantly be on the treadmill, don’t focus on the front end. The further down the stack you go, the slower technology moves and the easier it is to stay relevant. Besides, just from looking around, front end pays less and it’s easy for most companies to find cheap “good enough” front end developers. As far as being “lucky”, it’s not luck. If I see my employe…

> The further down the stack you go, the slower technology moves and the easier it is to stay relevant. I don't think this can quite be generalized. Front-end web certainly moves the fastest, but does Windows application development move faster than lightweight microservices? I doubt it.

Lightweight microservices are still overwhelmingly a Java, C# and Javascript. The technology hasn’t changed.

Re: Ask HN: If you only do programming at work, how do you manage your career?

#19
post #11

Earlier quoted context omitted.

As a counterargument (or perhaps as a corollary), backend programming is also a treadmill these days. It may not have the churn of the world of front-end Web programming, but the world of backend programming in 2020 is quite different from that of 2010. As someone who does mostly backend work, within the past decade I've seen the rise of cloud services, non-relational databases, the Hadoop ecosystem, distributed stor…

My first professional programming job was in 1996. I was writing C for DEC VAX and Stratus VOS mainframes and reading about undefined and implementation defined behavior on Usenet in comp.lang.c. My second job three years later was writing C and C++ for Windows computers along with MFC and some standard cross platform C++ using the STL. Recently, there was a blog post submitted on HN with “trick” questions in C where…

I can’t believe how cloud has been so popular and every company is pushing towards cloud and I totally agree with you cloud is basically someone else computer but people make it seem like its something big You know what i mean

Re: Ask HN: If you only do programming at work, how do you manage your career?

#20
post #14

Earlier quoted context omitted.

> As someone who does mostly backend work, within the past decade I've seen the rise of cloud services, non-relational databases, the Hadoop ecosystem, distributed storage systems, containers, the increased use of languages outside of C/C++/Java for systems programming (e.g., Python, Go, Rust, Clojure, Scala), machine learning, and CUDA, among many other technologies that were either nonexistent or were in their infa…

Kubernetes is not as big as the hype makes it out to be. Microservices have been around for over a decade. They were called service oriented architecture and instead of REST with JSON they sending XML.

I've got a feeling that in the SOA days the services were just "services", not microservices. I.e. people were not pushing for 200 lines of code microservices, like they do now. For example, I have a team of three devs at work who wrote a backend of around 10 microservices... Total cargo cult.
Post reply on HN