Ask HN: What career path is better. Bleeding edge or niche?
I want to become an expert at a specific technology but I'm wondering what's better...
Working on greenfield projects withe the latest tech or maintaining legacy products
For example should I learn and master ASP.net completely and find jobs there or should I learn the latest javascript framework and find jobs there.
Which path would give more satisfaction and job security and money? In your example I believe that complete mastery of ASP.net and strong competency in the adjacent pieces of the MS stack would probably generate the best job security. This stack is used in many medium size businesses all throughout the US, including many with cheaper cost of living than the Bay area. However, you need to be comfortable knowing that you will work mostly on CRUD type applications that power so many business processes. The bleeding edge is much more interesting but also carries much higher risk and potential reward. You may find yourself expert in something that was technically very interesting but the timing is wrong or the specific tech fades quickly. So failure mode has you learning and relearning the latest frameworks trying to stay hip and potentially changing jobs frequently. On the other hand, success out on the bleeding edge might but you in an equity position in a start-up that turns into a unicorn. I gravitated more toward the fringe and have built some cool tech but the start-ups and projects never reached market success and so I often reflect that had I picked more standard problems and tech and become expert in those I would have very high consulting rates today and plenty of work. As it is I have moderately high rates but I don't quite fit into people's mold and it is somewhat harder to stay busy with billable hours. In the end you also have to live with yourself intellectually and emotionally. So although my more fringe focus hasn't yielded the best economic ROI - I have mostly enjoyed the choices and outcomes for my own life. If you ever want to truly be held as an expert, you should be doing what you _enjoy_ most. Not for money, not for job security. Purely enjoyment. The rest will follow. This is terrible advice in the general. I've known lots of people following this advice, to peruse a career in a field that doesn't really pay much. Ended up struggling and stressed. I feel really sorry for you and your friends who spend your lives doing what you don't enjoy for the sake of some 0's on your bank account. Also, I'm not saying go pick flowers for a living. But you should at least enjoy what you do, which fosters continual growth (to become an expert, you must grow). Most people don't enjoy struggling and the stress of not being pay the bills. Trust me, that's more stressful than a job fairly your fairy 'meh' about. It's much more likely to burn you out. Most passions, when you turn it into job, just ruins the passion(Having done this myself). You go from something that's creative into something where cost, and timelines matter and you have very little personal input. I understand where your coming from and I'm sure theres a happy medium. Doing just money or just enjoyment wont work as well as a proper balance. But, to play devils advocate... Having worked in a high paying, crap job and moving into a job with lower pay but much more aligned with my passion I am MUCH happier That makes a lot of sense. I have been battling with the paradox of choice. Everyday I try to start a new project but instead I just keep on googling Angular vs React, Asp.net vs Django. I have a windows computer and visual studio seems like the best tool I can use , so simple to set up. I enjoy working with it, maybe I should take the risk and just dive into that technology. Build a simple project with asp as the backend and react on the front end. Then swap the backend to something else you have been considering vs asp.net, like rails or Django or node.js. Then swap the front end to something else like angular2. If the project is simple, you can do each of these swaps in a few days, and then you will have a better understanding of each, instead of just wondering. > Purely enjoyment. Like we know what we actually enjoy for many years to come. You know why "follow your heart" is such a terrible advice. Business is about filling other people's wants in exchange for money. This is questionable advice. What is questionable, imo, is this worldview which you and another have mentioned. What a sad way to live, fulfilling other peoples needs in exchange for 0's, instead of trying to fulfil your needs for intellectual growth, joy, etc. while _also_ supplying an end product or service of some sort. You realize you can enjoy what you do, love what you do even, and still exchange a product/service for money? In fact, you'll likely do better as people will sense your _passion_ about what you are selling, as opposed to seeing you chase the 0's What kind of job are you looking for? It depends what you want to do. If you're applying for existing companies seeking certain skills that's one thing, but if you're contracting for non-technical clients they don't care what technology you use as long as you deliver a solution on time and do it well. Personally, I think once you have enough experience you should be able to easily pick up new frameworks. I don't understand developers who try to define themselves by a single language or a single framework. You should be trying to pick the best tools available and learn as you go when required. You might be safe for a couple of years sticking to one thing but the industry is constantly changing so you should have a diverse skillset and always be learning.