Hacker News new | ask | show | jobs
by gesman 2720 days ago
Solving [business] problems is a viable career choice.

Web development could be solving someone's essential business problem or totally non-essential for someone else.

The key is to find the customer for whom whatever you're doing will solve essential business problem.

Quite often web development is exactly what customer needs but he won't call it this way. He won't use this wording. He won't look for web developer. He won't pay for web developer.

But if you approach customer by speaking customer's language and showing customer how you can solve his problem - the result could be way more win-win and productive.

You won't hire an expert in "connecting wooden boards with nails" but you'll more likely to hire an expert in "building houses" to build your own house.

That's an idea.

3 comments

This is just bypassing OP's question. You could similarly ask if plumbing, plastering or tiling is still a viable career choice in construction, or whether one should focus on general carpentry.

You'd then try to work on projects where your construction specialty is seen to be more valuable than not, that goes to your comment. But that's an entirety different question than whether a specialty should be pursued, and if so what specialty.

E.g. in this case whether it's still a good move for a new developer to start out his career by focusing on web dev v.s. say native mobile dev, or mainframe development or whatever.

For whatever it's worth, their answer was pretty close to my immediate reaction when I saw the question. Maybe another way of phrasing the answer is that no, I don't think 'Web Dev' is a viable career option. This becomes even more true when viewed on a time scale of 10, 20, 30 years. (Tying to a specific technology brings the horizon in even further... Web Dev 20 years ago was CGI scripts, 10 years ago it was server-side rendering frameworks, these days it's SPA's...)

What I do think is that 'Web Dev' might be a viable first step within a career. It's a good way to get yourself into a spot where you're exposed to signifiant problems, and if you're lucky, it will also give you exposure to people that can help you along, as you develop your career. (But it's important to be intentional about both.)

At the very least, that's how I answer then question when asked in person... focus on the specific tech as a tool in the short-term, and then focus on effectively solving problems people care about. It's better for them, and most likely, better for your own personal career development.

(Edit: Some of this may just be my own perspective... My professional work has included everything ranging from small scale embedded programming to large scale clustered web apps and platform development. I'm grateful for never having thought of myself as a 'web dev', even though it is something I'm capable of.)

Dunno, I started out with a lot of perl-cgi, and now do mostly react/redux/material-ui on the front end... I've picked up a lot of backend stuff over the years. SQL/PostgreSQL/Firebird/DB2/Oracle/mySQL, mongo, aws, azure, rethinkdb, rabbitmq, etc... The key is to not rest and constantly be learning/growing. That includes line of business knowledge.

I love this kind of work. Writing learning software for airplane systems. Accounting and auditing systems for fortune 100. Kiosk+POS for water distribution platforms. Security software. Election services software... It's been an amazing 24 years, and I have absolutely every intention to keep learning/working until I die.

I find that a lot of people just think that "web dev" stops at the browser.

Since now the web interface is ubiquitous everything could be labelled as "web dev", but for me your examples are general "software dev".
OP did not ask if they should pursue “web dev” vs “general/other dev”. That’s an assumption you’re making. I read this as “web dev” vs “do something else entirely” and in that light, the parent response is entirely appropriate.

Tangent: “general carpentry” is not a superset of plumbing/tiling/plastering. Carpentry is its own skill related to working with wood and similar products. Maybe you meant general contracting? Although that’s still not actually a superset and you won’t find that most general contractors are licensed for plumbing and electric work.

You are making an assumption here they want to freelance or take a consulting position. There are plenty of web development positions available on teams or at agencies that find the customers for you. There is no need for someone just learning web development to go straight into consulting work. In fact, I'd highly recommend against it. You'll get the most out of working with other developers and improving your skills before you go out on your own (if you ever go out on your own).

Edit: To summarize, not every web developer needs to be an entrepreneur.

> In fact, I'd highly recommend against it. You'll get the most out of working with other developers and improving your skills before you go out on your own (if you ever go out on your own).

I often wonder at the whole "gotta be a contractor" mentality. I understand there's more money there, but I think that there's a huge value in learning to be a team player where you're building something you are actually invested in, if even for only a 1-2 year period. As a contractor, the skills you build and lessons you learn are important, but they aren't as concrete as living and dying with a particular team and a particular solution for an extended period. In addition, I feel like you are more likely to get vital mentorship at the critical early part of your career as a member of the team instead of a replaceable contractor cog.

If anything it seems that to be successful at freelancing you need to specialize even more compared to a traditional job. Otherwise, your skills would become a commodity in a market saturated with "web developers".
> Solving [business] problems is a viable career choice.

This is spot on, whether you are free-lancing or working as an employee in a big organization.

More generally, software development benefits from a large flow of money precisely because, whether directly or indirectly, it enables businesses to accomplish things in a {faster, more efficient, cheaper} way. When career planning, always remember where the money comes.

Interacting with an end-user is not a "solved problem" that has been commoditized. There are still a lot of human touch, optimizations, edge cases and performance issues that are actively being worked on and have not been formalized and standardized in ubiquitous ways for all industries. Sure framework XYZ may get you 80% there but then there are specific UX issues that you will have to delve in, and that's where the real fun begins.