Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Jack-of-all-trades of HN, how do you approach job search?
327 points by a_square_peg 37 days ago | hide | past | favorite | 250 comments
I have enough experience under my belt to feel comfortable approaching fuzzy engineering problems that span relatively unfamiliar domains but I feel it's quite difficult to convey this when applying for positions.

I'm also sure to fail googlable technical questions so I was wondering how others might approach this.




I’m almost 60, lots of various technical experience in my 40 year programming career. I’m busier than ever with freelance work.

Don’t try to join startups or cool SV companies unless you have an inside track. Their recruiting and hiring practices are mostly geared to ensure “culture fit.” That’s code for young single male who will work 12 hrs/day and think free beer and pizza makes it cool.

Focus on measurable accomplishments rather than languages, frameworks, tech buzzwords.

Learn to solve business problems rather than “engineering problems.” No one needs 2,000 more lines of Javascript. Lots of companies need business problems addressed.

If you’re applying for jobs you’re hobbling yourself. If you have years or decades of experience you should have a large network of colleagues to get leads and jobs from.


If you have years or decades of experience you should have a large network of colleagues to get leads and jobs from.

Clearly I've failed here. I've kept in touch with a few folks from previous jobs via LinkedIn or whatnot, but as a network, I'd describe it as "thin and weakly connected." Part of that is due to being an introvert and generally terrible at maintaining long term human connections. And part of it is a certain indifference I've had in the past to actively managing my career, which in an of itself is a result of how generally easy it's been to find work. Curious if I'm alone in this?


I suffered from shyness and what's called introversion when I was young. I also got combative with people I worked with. In my early 20s I met a guy (at a seminar) who was outgoing, friendly, easy to be around. Somehow we hit it off. He got me to attend Toastmasters (to get over my fear of speaking to strangers, and speaking to groups) and gave me some advice that some people pay thousands of dollars in therapy for: smile, look people in the eye, listen. Talk to (at least) one stranger every day -- initiate a conversation rather than standing in the corner.

At first that all felt forced and artificial but before long it was second nature. That free advice helped me in my professional life more than any tech skill. People decide if they like you or not within seconds of meeting you, based on a variety of cues. If they don't like you then you will struggle to get a job or gig.

Programmers often complain that the extroverts get ahead even if their tech skills aren't great. That's human nature, so rather than complain and fight it you can try to change yourself. You don't have to be fake. I see people on HN and other forums all the time writing about "hacking" their lifespan, their diet/metabolism, their ergonomics, their productivity. You can "hack" your personality too. Stop calling yourself an introvert for a start, that's not something a person "is," it's a label you can change.


This doesn't work for people in the autistic spectrum. It will just tire you and frustrate you, you have been warned. As for others, I this advice might prove useful. I guess the solution is to look for an job that doesn't emphasize neurotypical personalities. Or just be straightfoward to the people you meet; not everyone has to fit the extrovert card.


This also does not work for people with “worse” appearance.

After trying hard multiple times - Ive said F IT and went full b2b. Ppl may not like me, but they need my skill..


Hey, I accidentally added you on LinkedIn (I wanted to add a but couldn’t on the phone). I’d like to hear more about this as some of my social skills could really improve. I also like learning about it.

Let me know if you’re up for a chat :) if not, then thanks for the comment! :D


I’m the wrong person to help, I think. I can only relate my own experience. Unless you get lucky and meet a natural extrovert coach like I did, seek out a coach, or even a therapist.

I limit my LinkedIn network to people I actually know, no offense.


None taken


> Curious if I'm alone in this?

I think most people underestimate their networks. Not saying you're wrong, but you've worked with people, right? Hopefully not been a complete ass :) ? Done work on a team with or adjacent to them?

That's a start!

Networks aren't created overnight, and people try to hack them poorly all the time.

Think about it like a garden, not a project. It can't be created overnight: the right way is repeatedly, but at a low-intensity, tending to it.

Set yourself a goal: reach out to one person you've previously worked with on LinkedIn a week. Don't ask for a job. Just say you were thinking of them, {insert memory, if you have one}, and hope they're doing well. If they reply, maybe steer the convo to what technologies or challenges they're working on now...

I get it. I'm an introvert too. I'm €®£÷ing terrible with people. But it's improveable with repeated effort, like anything else.

A few ideas (in preferred order): (1) Take coffee (or now, Zoom?) with folks to catch up, (2) Volunteer with tech groups (pref charities, in tech, with people you want to network with, not just you giving free labor, and make sure to introduce yourself and talk about what you do), (3) Attend tech meetups (eh... unless you're presenting, this can be a waste of time), (4) Attend conferences (again, be seen, introduce yourself. Many are remote and free this year, good for attending, bad for networking)

The end goal is that if that person thinks "I need someone to X" then your name pops into their head. If you haven't talked to them in 5 years, that's not going to happen.


I was standing at a gas station in rural New Mexico a few weeks ago when my phone buzzed. It was a LI note from an ex-colleague that I hadn’t seen in 12 years, wanting to know if I was available. I’m meeting her team in a few days.

Just being a good human being will get your far in life irrespective of tech stacks.


I hate to be a sourpuss, but in my experience that usually means that your long-lost former colleague is struggling to fill an unappealing vacancy, and not actually offering a valuable insider opportunity to you in particular, just because you happened to work together more than a decade ago.


FWIW that hasn't been my experience; mine has been closer to gp.

Best work advice I ever got: the competent nice guy always gets hired before the genius asshole.

People just want to solve a problem as painlessly as possible and go home.


That's completely understandable - people change over time. In this case it's truly appealing for both technological and non-toxic-work-environment reasons.


I think most people underestimate their networks. Not saying you're wrong, but you've worked with people, right? Hopefully not been a complete ass :) ? Done work on a team with or adjacent to them? That's a start!

This is absolutely spot on advice.

Having a career network is roughly equivalent to saying "I have former coworkers that would say that I am competent and pleasant to work with".

There doesn't need to be some intense relationship that persists past working together. Just shared work experience, and a track record of jobs well done on your part. : )


Totally agree. I'm not a "networking" person in the sense of deliberately cultivating/expanding a network, going to networking events, etc. It's also true that all three jobs I've had over the past 20 years were through personal contacts. (And the only tech job before was right out of grad school via an on campus interview.)


I think this is a bit too passive of an approach to generating freelance work. Everyone that I know of in consulting or freelancing is actively approaching people, drumming up conversations and trying to find things that they can help with to get their foot in the door. Once you've delivered on some projects with those clients, then they'll typically start coming back and asking for more, but it's not realistic to think that you'll get people cold-calling you asking for your services simply because you talked to them on LinkedIn for 10 minutes.


Everyone I know in freelancing/consulting, including myself, does almost no work drumming up new customers.

Repeat business from long-term relationships, and word of mouth through referrals are my main source of new customers. I work through an agency that puts new projects in front of me, but most of my customers are long-term, and I got them through contacts.

Among your professional colleagues you have to cultivate a reputation as an honest person who can solve problems, someone who is easy and pleasant to work with. Then people will think of you and recommend you when they hear about an opportunity.

I'm on LinkedIn mainly to keep in touch with people I used to work with, but I have never used LinkedIn to get consulting/freelance work.

I know lots of people trying to freelance struggle with getting jobs. They're all over Upwork and Fiverr and the many other gig sites. That's piecework, it's not the same as consulting. I hire people from those marketplaces sometimes to do small short-term projects.

One goal for freelancers and consultants is to get to the point where you're the only person the customer talked to. You aren't interviewing or submitting proposals. I understand that doesn't sound realistic to someone just starting out, and I admit I had the advantage of decades of professional experience and a lot of contacts. I describe some of my experience on my web site, I don't think I'm particularly unique.


Depends on gig length. I tend to work on longer contracts, so should have called that out.

If you're doing short-job, multiple-contract work, definitely salt active effort to taste.


> Volunteer with tech groups ...

Along these lines, personally I find helping out at local Makerspaces (prior to covid lockdown) both rewarding and a source of interesting new forward looking people. Often people with early stage (physical) product ideas, thinking how to make their first working prototype(s).

Once the covid thing is over (whenever that is...), it might be a useful avenue to try out. :)


> I think most people underestimate their networks. Not saying you're wrong, but you've worked with people, right? Hopefully not been a complete ass :) ? Done work on a team with or adjacent to them?

Wait, I wasn't supposed to be a complete ass? Uh oh. :(


^^ this is really spot-on advice


You're not alone, but I also think that (like most of us) you're setting the bar higher than it actually is for what a "network" means. You posted a question on HN and look at how many people are willing to put effort into answering it and helping you out, and literally the only connection is "all of us read HN."

If you look up people you've worked with or otherwise know whose opinions you respect and ask them a version of the question you asked here, my experience is that most people will be more than happy to talk and to direct you to other people that can also give useful information.

The key issues (again, just in my experience) are:

1) don't ask for a job, or approach these conversations with the goal of getting a particular job. People can be 1000x more forthcoming and are generally more helpful when it's an "informational interview" rather than an informal "job interview."

2) always ask, "do you know anyone else I should talk to?" That's how you make progress.

3) don't be an ass. More actionably: interact with other people the way you'd want to be approached if the roles were reversed.

tl;dr: a "network" doesn't need to be a close group of your friends.


> More actionably: interact with other people the way you'd want to be approached if the roles were reversed.

I believe the introvert's response here is "I wouldn't want to be approached if they're just looking for work"


That's most of the reason for the first item: "don't ask for a job, or approach these conversations with the goal of getting a particular job."

Many people, introverts included, would want to be approached by someone genuinely interested in their opinion about, "how to approach job search as a Jack-of-all-trades?" even by people they have little connection with.

(As the sibling comment points out, these conversations often benefit the person you're talking to as well, even if you are asking for a job. But that's not the specific point I was trying to make since it relies a little more IMO already having stronger connections.)


I used to struggle with this too. What helped me get over it is realizing that this is completely backwards. At every company I've worked for there has been a near-constant need for good people. When a former colleague who I know does good work reaches out to me about jobs at my company, I'm thrilled to have a conversation with them.

Even aside from any degree of friendship, this is nearly always a mutually beneficial situation. If it works out, I get a new teammate who I know is good (lower risk than hiring someone random). I probably also get some kind of kudos (generally even a bonus) from the company for the referral.


But if they fail that can be on you as well. There is a risk connected with this activity.


> I've kept in touch with a few folks from previous jobs via LinkedIn or whatnot

That's enough. Most people will be happy to hire or recommend people they've had positive (read: not negative) work experiences with.

To you, you may seem introvert and invisible. But to someone else you may be a professional who doesn't waste time on banter and who will get the job done without rocking the boat.

Just contact people you've worked with before, you'd be surprised at how they remember you.


I’d add that it’s not to late to form connections now—people you’ve simply _met_ will often offer to recommend you.

I’ve cold called people I don’t know to ask about roles/companies, and had them then go on to advocate for me and get me on the inside loop. People I’ve never worked with! People generally love helping other people. Think: you’d likely do the same.

Also: it’s a positioning game. A name people have heard before is better than one they haven’t …


I think your connections are probably stronger than they appear. I'd be more than happy if a former colleague reached out to me about a job with my company. Even if is was somebody that I never really socialized with.

I don't think professional connections are something that need to be maintained in the same way that personal ones are. If someone remembers you and thought you did a good job, I doubt they care that you only reached out because they happen to want a job where you're currently working.


I have a network of close friends that I have maintained since college 20+ years ago but along the way there were a lot of people that I was friends with while I worked with them and for a time after we went our separate ways. I've started going through my contact list and started reaching out for a quick call to the people I'd like to build up contact with again using COVID as a reason to reach out. Anybody that answered was really happy that I rang. I try to do this once a week, all it takes is a few minutes, try scheduling it and picking one person a week, worst case its a short call best case its a friendship renewed. I think during COVID people are happy to take a personal call as casual conversation has died a death and work calls don't fill the same gap for human contact and conversation. Try it, what's the worst that could happen!


Every person has multiple social networks that they interact with on a daily basis. I think you're confusing your personal friend network with your larger professionally relevant network. All you need to get a job lead from someone in your professional network is for them to have a positive impression of you, even from years or decades ago. That impression can be built up from years of working closely together on projects including building up a close friendship, or from talking to someone for 15 minutes if you really stand out positively to them. Don't undersell the value of the connections that you have. Most people would rather hire someone that the know than someone randomly selected from a stack of resumes.


LinkedIn is a terrible place to get jobs and a terrible place to look for talent. Many people are very unsatisfied with this site for tech/developers. Often one looks great but once started development it is bad. I have not being developing about half of time as the parent thread author. However, all what he said sounds true!!

I never used a site to find work, always through network or colleagues. They tend to know my capabilities best. Head hunters are horrible people for tech. Buzz word and framework doesn't mean a thing. If you a good developer you can figure out how to do anything! It is how you thing and how you understand stuff and how to solve problems that counts.


I agree that LinkedIn is a terrible place, or a last resort, to find work. It's actually a pretty good place to maintain some connection with former colleagues and people you've met in your professional life.

I will disagree about recruiters (you wrote head hunters, which refers to a specialized kind of recruiter). Most of them are useless, but if you can find a good recruiter they can open a lot of doors. Many companies only work through recruiters, and good recruiters know the local job market and have contacts. How do you find a good recruiter? By asking people in your network.


> How do you find a good recruiter? By asking people in your network.

Yeah I am a bit weak in the area. I have stopped LinkedIn after MS bought them, a concern about my data privacy. One friend recommended a recruiter, wasn't very helpful. Would be open for other recommendation someone who is NOT just looking at buzzwords.


Think of it less as a friendship network which requires active effort to maintain and more of a collection of people who have experienced first hand your technical abilities and can vouch for them. Hiring good engineers is really hard and interview processes aren't all that good at selecting good engineers. So if you are looking for a new opportunity and have a way to broadcast that fact to former colleagues (LinkedIn!) then you will likely be able to get a lot of leads from people you may not have talked to in years and maybe didn't even know that well on a personal level when you did work together.

I can think of probably a dozen people I have worked with over the year, haven't spoken to since we parted ways professionally but would nonetheless immediately try to hire (or refer for hire) if they reached and said they were looking.


I have a great network of old colleagues, in the UK. Unfortunately for both my network and I Brexit happened and as the UK wanted me to give one of my two passports up in exchange for a nice blue one from the UK, I decided to move to the mainland instead. Network blown, and have to interview in a second language. It's harder for sure, but not impossible. I'm 50 and happily in a financial position where I can last a few years without a job.


I don't believe the UK has any rules against multiple citizenships [1] -- speaking as a triple national with UK citizenship, if I may ask, what happened there?

[1] https://www.gov.uk/dual-citizenship


I asked the home office what it would take for me to stay. Note that this was in 2018, so some time before they'd actually nailed anything down formally. Anyway they told me I'd have to apply for indefinite leave to remain, and eventually become a Brit. There was a fee too, I think ~ £1000. And the kicker, they said I was only allowed a UK passport and one other. And so I left the UK.

Having left I no longer paid much attention - I have no idea what the actual rules/requirements are for EU citizens with an additional non-EU citizenship to naturalise into the UK. And honestly I was so destroyed by the referendum anyway that I doubt anything would've kept me in the UK. Crazy sad.


Thanks for sharing your story and sorry to hear about your troubles. Best of luck. Also if you like I’m happy to speak with you more about opportunities, especially contracting; I’m usually thrown more than my network can handle.


Wow thanks for that offer. Grateful, but if I may I will decline - I really want to learn how things work here, and I'm making great progress. At the same time I'm trying to finish three software projects - one that has 60kLoC and started life in 2004. No shortage of stuff to do (and if I can turn one of these into a lifestyle business I'll be well happy)!


Curious question, does ur country of origin allow for double citizenship? I suspect that is the reason.

Otherwise, pardon me, I'd be shocked the UK keeps on growing inwardly and isolated from the rest. I just hope that they embrace the rest of the world as their leaders say. The US would love to have a closer relationship and I suppose other non-european countries too.


You are not alone in this, I'm an introvert as well and have a thin network but some of those contacts from the network are genuine friendships I made with former coworkers. I've made friends with gregarious extroverted coworkers too but it seems that those connections don't last once we're not working together. Oh well, it is what it is, there are clear disadvantages to being introverted.


I am really bad at this, but have gotten four jobs because I knew one person who really liked networking and thought I was really smart and convinced companies to hire me.


Definitely not alone. That post could have been written by me.


Sounds way too negative from my experience. I’m only in my 30s to be fair, I’m sure it does get harder as you get older, but I’ve also definitely interviewed a lot of older engineers and made offers to them at what seems like a similar rate as other age groups.

I have to strongly disagree about advising the OP not to join SV startups. I’ve worked at many of them, and they can the perfect environment for a “jack of all trades”. I also have not found that all of them just care about culture fit, there are certainly some that might fit that caricature but but by and large what they care about is can you get things done quickly without needing a lot of hand holding. Smaller startups are more likely to look for this as well in an interview, and for example have you build something fairly practical rather than solve tricky algorithms problems that bigger companies rely on.

As far as using your network to get jobs, you might be surprised that it’s not as easy as you think. The smaller the company the more pull this can have. But most companies try to be objective in the hiring process, and any company over a certain size (I.e. if they’re big enough to have recruiters and a head of HR) probably won’t just give you a job if you don’t pass their standardized interview questions. The main way it can help is if you don’t yet have enough experience on your resume or a good school and are having trouble getting past the resume screen, a personal intro can move you along to at least the hiring manager screen or first technical screen step.


In general you should not expect more than help getting the first interview from your network. With that being said, I have heard stories from older engineers in my large company that they skipped fizz buzz type questions for people with a strong internal reference.


How much help you get from a contact or referral depends on where that contact is placed. Sometimes you just get your resume put on the short list. Sometimes you skip the entire process. Regardless of company size or HR policies, a hiring manager who wants to hire you will do that.

That has happened to me more than once, and I have heard the same from former colleagues who literally walked in to jobs at Google and Netflix without any interviews or HR, because they knew the right person and had a professional reputation that spoke for itself. You don't suppose Google interviewed and tested Rob Pike, or Microsoft whiteboarded Anders Hejlsberg, do you?


I don't, but I suspect that they aren't asking for advice on how to find work.


> I have to strongly disagree about advising the OP not to join SV startups. I’ve worked at many of them, and they can the perfect environment for a “jack of all trades”.

Well, you can disagree, but you’re wrong. Just look at what the interview processes are optimised for.


I agree they can be the perfect environment for a jack of all trades. But they too often (not always, not uniformly) have recruiting, interviewing, and hiring practices that screen out older people, or anyone who isn't just like the team. That may be discrimination, or (more likely) just the normal human tendency for people to associate with other people more like them than not. By the same token I'm not going to fit in at a skateboard park or a club for video gamers.

Age discrimination in the software business is a real thing. There's a widespread (and I think wrong) notion that older people are stuck with outdated skills and can't learn anything new. Young people can have a lot of hubris. I generally excuse that as the inexperience and over-confidence of youth (I am the parent of three millenials).

A team of 20-somethings may not want me, and they may be right that I won't fit in. I think I might add some experience and maturity the team lacks, but too much friction in the team will work against everyone. Team dynamics are a first-order driver of productivity, so it's up to me, as the outlier, to persuade the team that I will fit in well enough to add value, even if I'm not going to play foosball or decorate my cube with anime (exaggerating for comic effect, but also directly from my personal experience).


> "If you’re applying for jobs you’re hobbling yourself. If you have years or decades of experience you should have a large network of colleagues to get leads and jobs from."

Sorry, but this is like saying "if you're 30+ years old you should have a large network of friends and family and not feel lonely". It does little to solve the problem of people who lack such networks to remind them that they do.


I agree with you, but at least the advice gives an idea of how some others approach finding work at that age.

It comes with the implication that it's worth aiming towards similar, if you think you could, because it's actually working for some people.

I.e. by being more aware of network-building, being a bit less afraid to mention your availability when getting to know people, having in the back of your mind that it's actually good for your future prospects if you're helpful and pleasant to people, being willing to play the slow "keep in touch" game, and the LinkedIn game, and maybe appreciate that it's not entirely social BS, it's actually kinda useful in the big scheme of things.

That doesn't solve the problem for people who are lonely and struggling, but it gives an idea of a useful direction to start building in, from knowing it's working for some people.

I will add a tiny bit of advice: It's really ok if you don't already have decades of networking and colleagues like some appear to. You're not at a permanent disadvantage.

If you have few friends and no colleagues, it will take a while but that while is measured in months and low years, and like anything, cultivating freelancing/consulting connections is a skill you can get much better at with practice. Get used to reaching out, like for example write to some of the "freelancer wanted" posts on HN, and write to people at companies who post something interesting, including C?Os and so on. That's kinda fun, because some of the people you end up talking with actually really enjoy human connections and are interesting people, and you are building their network too. To them, you are valuable, even if they don't know why yet. Some of them know this and are happy for the contact.


I agree with your point. However, I think it applies to youth more so than adults. I strongly think that a lot of adults who suffer these type of hardships are aware of them. And have tried to remedy them.

I know that for some: years and years of trying isn't enough to create neither type of social network.


I'm doing ok now, having started from near-zero network in my 40s, after a long lull and letting my social and professional circles fade away due to life circumstances.

That's why I say it can be done when older too, and have an idea what the timescale is.

(I also think the "other people appreciate your potential value in their network" point applies more to older people than younger. That is, if you're older, your perceived network value is a bit higher; I'm guessing the age is vaguely associated with seniority and future opportunity for the other person.)

However, I have the advantage that I did figure out people and developing and maintaining social links (if I want to and feel up to it), a number of years ago. I've led community groups occasionally too, which is not always pleasant but very educational.

I still remember not knowing how to, having no active friends at times, and being very lonely and isolated. So I empathise (a lot) with those who are stuck and unhappy with that.

For those people you're talking about who have tried for years and years, if they're really stuck, I wonder if there is some kind of coaching or training that would make a useful difference, assuming they want to change the situation. If there isn't, there ought to be.


No, it's a reminder that you have work to do.

You know when people say, "marriage is a lot of work" ? Meaning the relationship needs to be tended. Same here, when maintaining connections.


I doubt many people have networks so strong that people are just giving them jobs without them having to go through some kind of application process.


I think you'd be surprised at how common this is. Not just for programmers -- it's the norm for executives, marketing people, sales people. Personal connections and professional networks are vastly more effective than spamming resumes out and applying for jobs. It's human nature -- we prefer to deal with people we know, and we trust referrals from people we know.


This is not common, much less the norm, for programmers. It might be the case in small startups, and it might be the case in other outliers, but not in typical companies. Even the most strong referrals are at best a foot in the door and a leg up over other candidates. Referrals still have to go through the same interview process, and potentially be rejected.


Your mileage may vary. I haven't interviewed for a job since 2005. The three f/t jobs I had before that I had to interview for, but I was the only candidate they considered (because of professional connection). The other interviews were required to comply with HR policies (apologies to the candidates who didn't really have a chance).

I don't think my experience is unique or even unusual. I have hired friends and former colleagues with only pro forma interviews because I already knew what they could do. I've been hired the same way. At almost every place I worked other people there got their jobs through a connection.

Maybe the difference is I know quite a few people who have hiring authority, possibly as a function of my age.

I stopped working f/t jobs in 2011, have freelanced full-time since then. I don't interview or submit proposals for freelance jobs either. Usually I'm the only consultant the company is talking to, the others waste time on discovery and proposals and "process" whereas I'm ready to get to work right now.


You are what is called an "outlier". Your experience is so far from typical as to be irrelevant to anyone looking for full-time employment work. You experience isn't unique but it is very much unusual.


Anecdotally I don’t think so, but I don’t have any numbers. I’ve had quite a few jobs in 40 years working as a programmer. I believe around half of the people I’ve worked with got their job through the side door rather than through a formal application process. Sometimes the side door was a connected recruiter, but more often it was through a past work relationship or friend-of-a-friend. I can’t remember ever getting a job myself by sending in applications, though I have gone through interviews.

I suppose a lot depends on where you want to work.

Regardless, my main point is not to overlook contacts and former colleagues. I think going through the front door with applications is the last resort, not the first or best approach. There’s a book called Who’s Hiring Who? that I found useful a long time ago.


This. With the exception of super early stage startups that could easily go belly up fast, or small mom&pop shops, networks and connections are most likely to only get you to an leetcode phone screen. From then on, you're just going to traverse the leetcode whiteboard interview gauntlet like any other candidate.

I have a friend/ex-colleague that I would describe as a "master networker". He has a huge network including some pretty senior executives at various NYC hedge funds, and even a billionaire or two. I kid you not in that he can literally make a few calls and get a "developer job" at a hedge fund.

The downside is that he has to be extremely unpicky and be willing to settle for very unsexy jobs like shuffling XML feed files using SSIS or working with Excel VBA or legacy ASP.NET Webforms code, etc. But all of them still pay very well, so...


At every company I've ever worked at, even if I recommend someone, they still have to go through the hiring process. No company would hire someone just because I said they were worthy. It's just lead generation.


It's not my job to solve the problems of people who don't have networks. I have 40 years professional experience in the software dev business, as I wrote, and during that time I've met and worked with a lot of people. Networks grow organically but you have to cultivate them (another person commented in this thread with the garden analogy).

If you feel lonely or struggle to connect with people, or maintain relationships, don't expect to get help for that in HN comment threads. Don't feel sorry for yourself, get help.


If you feel lonely or struggle to connect with people, or maintain relationships, don't expect to get help for that in HN comment threads. Don't feel sorry for yourself, get help.

While you are close to being 100% correct with this advice, don't you think you are being a bit harsh on the OP as it's obvious that's exactly what he has done by posting his job seeking issues here on HN?

I mean...if this is how you feel, why bother even replying to him? Obviously, it's too late for your advice to be of any help to him now in his current situation, right?

I'll come clean and add that I, too, am in a very similar boat as the OP...I'm a 55yo software developer with 35 years in the industry, and due to my lifelong passion with a side-career as a semi-professional musician and other introvert-type issues, I literally have a non-existent network of people who will help me find work.

In no way am I feeling "sorry for myself" with my job hunt...I'm just trying to keep from being homeless and hungry.

It's probable that the OP is facing the same things.


I don't think HN comment threads are a good place to get therapy. At best you get a variety of opinions and some personal anecdotes. I posted about my own struggle with shyness and introversion above. If I still suffered from shyness and introversion I would get therapy, I wouldn't come to HN and ask random people what to do.

In the spirit of trying to help, let me point out that your comment, and some others from people who apparently don't have networks of friends and colleagues, start the discussion with a negative tone. "That's fine for you but I don't have a network, I guess that means I've failed." Comments like that communicate giving up and blaming external forces, or things outside your control. We can all control whether we get along with people and cultivate relationships. Some people are better at that than others, but it's a skill anyone can learn if they want to. It's probably harder than learning a new programming language, but it has a couple of orders of magnitude more value in the long term. And it's never too late to start.

I'm not trying to be harsh on people or show off. I had the shyness/introversion problem when I was younger, and the lack of friends and professional network to go with it. The problem was my own behavior, not the world, not some cloud hanging over me I couldn't control. It took a person with insight who cared enough to try to help me to let me see I could change my behavior. Ironically that person was a new acquaintance I had just met a few days before. Just like changing any self-defeating or limiting behavior you start by acknowledging it and committing to change. Try CBT (cognitive-behavioral therapy), that might help if you can't push past it on your own. What doesn't work is telling people "I'm introverted" or "I don't have friends."


> I literally have a non-existent network of people who will help me find work.

A suggestion is to just build that network of past people on linkedin, today. There's no rule saying you can only connect with people you worked with recently.

I've been on linkedin a long time (2004) and for many many years I did the introvert approach of only connecting with those I worked very closely with and considered friends. So my network was tiny.

Somewhere along the line I realized this isn't my list of friends, it's just a network of people I've worked with who I'd be willing to forward their resume to HR if they asked. That set is a couple order of magnitude larger than my list of friends. So I started sending out invites to everyone I've worked with since the 90s who was adequately competent or better. The vast majority of people accept.


> If you have years or decades of experience you should have a large network of colleagues to get leads and jobs from.

That's really big assumption.

After spending 25+ years at Intel, all of my peers were from that company, and they fall into to groups: either retired because they were there when the options were plentiful, or they are stuck there because they are over-leveraged with houses, cars and kids and their skills are pigeonholed to something only 3-4 other companies are interested in.

EDIT: You're website is great, btw!!


Thanks for the kind words on my site.

I know the problem, you work at a big company and that constrains your professional network. I worked at Nike and Apple, and when I was there all of my professional (and most of my personal) contacts/friends were also co-workers. Fortunately many of them went on to other companies and worked their way up to hiring authority positions.

My advice is to expand your network outside of the software dev/tech group. Marketing people have been a rich source of work for me. I worked in logistics for a long time so I know managers who move from one place to another running distribution centers, and they have significant pull in those companies.


In my job, I pretty much have carte blanche, driving our technology choices. We're a b2b in the shipping space; our customers literally don't care whether we're running React or jQuery, Rails or ColdFusion, Node or old school PHP. They'll notice if it runs slow, if things break, or if we take longer to crank out a promised feature. I love to nerd out, but I'm continually suppressing that part of my personality, because truth is, buzzword bingo isn't my job. (At the same time, it's not a matter of sticking to old technology, we just base our decisions on metrics other than HN posts or Github likes)


For someone who wants to eventually be drowning in freelance work (or at least the option to be), what jobs would you recommend looking to join if not startups or big name SV firms.


I have some articles about freelancing on my site, typicalprogrammer.com. I have worked in logistics, e-commerce, education, publishing, marketing. I worked in software dev at Apple for a while. I think getting business domain expertise counts for a lot, as does learning to work with people who aren’t software geeks. People skills, domain expertise, and a good network count for more than tech skills when freelancing. Most of the things I work on aren’t technically complex, but have significant business value.


>I think getting business domain expertise counts for a lot, as does learning to work with people who aren’t software geeks. People skills, domain expertise, and a good network count for more than tech skills when freelancing. Most of the things I work on aren’t technically complex, but have significant business value.

Yes. I'm in diapers in terms of experience compared to you, but I tweeted about this as a reply to people who want to get into consulting/freelancing. A few things that came to my mind at that time from exclusively dealing with large organizations for mid six figure contracts that one or two motivated people could pull off[0][1].

Are you doing this as an individual or through a company? In any case, why one and not the other?

- [0]: https://twitter.com/jugurthahadjar/status/131066829330549965...

- [1]: https://twitter.com/jugurthahadjar/status/131971626283503206...


I’m represented by 10X Management, they handle the contract, money, marketing stuff. I work solo, sometimes I outsource small projects. I have small business clients and Fortune 100 clients.

I don’t have much formality or process. I ask potential clients to make a list of their priorities, pains, problems and then attach a value to those. I build long-term relationships by communicating and delivering what I promise, and taking an interest in the client’s business.

When I ask clients what went wrong with their last developer it’s usually poor communication or not understanding the business priorities, or both. It’s never “They didn’t know how to balance a binary tree with Rust.”


> When I ask clients what went wrong with their last developer it’s usually poor communication or not understanding the business priorities

This is the secret of being "good" at consulting.

If I am a business, and I have a problem, and I bring in a consultant to solve that problem, and I have to assign one of my people to handhold the consultant through solving the problem, then I've now (1) paid for a consultant & (2) lost substantial amounts of one of my peoples time.

So I had 1 actual problem, and now I probably have 2.5 problems: paying a consultant, less productivity out of one of my people, and a half-working solution to the original problem.

As a good consultant, your job is to change that equation. Have a light footprint on other people's time & communicate clearly and concisely. Make sure you understand the actual problem, and weigh in if you're being asked to build a solution that doesn't solve it well (there may also be good reasons you aren't informed of about why it's built that way).

It's not hard. But it is specific. And trainable in yourself!

Most companies are variations on the same theme. And their dysfunctions are variations on the same problems.

"Building the solution" is table stakes. The real skillset for consulting is shadow-technical-PMing.

Remember: by definition, you're parachuting into a company that wasn't able to efficiently and effectively solve this problem themselves. So is it reasonable to expect them to tell you how to solve it? ;)


Agree completely. If you ask my customers why they keep sending work to me they will say "He answers his phone calls and emails." Woody Allen said "Eighty percent of success is showing up" and in the freelancing business "showing up" means taking calls and responding to emails from your clients. It means addressing their actual problems, and helping them solve any problem they tell you about. Sometimes that means I will refer my clients to someone in my network (and that referral skips any interviewing/proposal process, because that's how it works).


Upvoted because this is the truth.

As a consultant, don't be an administrative burden for the client, be someone that gives them a feeling they can really stop worrying about their problem or task, because a real pro now has it in hand and it will magically get solved, and they will get the correct reports so that everyone is happy etc.

Ideally you let them imagine you are much, much better than anyone they've ever worked with, by rolling with that idea and not doing anything to detract from it. It's what they want to believe from the start, so you actually have some advantage from that. E.g. you can communicate when other people would avoid doing so, which often helps a business problem anyway, and you are likely to be presumed quite authoritative, even if you're secretly reading up on the material as fast as you can between meetings.

And be straight with the client if at all possible about issues, including whether you're being asked to do the right tasks, and manage yourself as if you had a great manager and PM so they don't have to. If necessary, help with gaps in managing other people too, but gently, by making sure people know bits of information that help, and taking small initiatives as long as they help. Overall be like you are wise, insightful, helpful, and understand engineering and businesses better than anyone they could hire normally, even if it's not really true.

I have just been a problem to two of my current clients, because of a timing conflict (and being messed around in a serious way by another company). That anguishes me and I'm now in repair mode. ethbr0's advice is exactly what I will be trying to get back to, and in the spirit of "be straight with the client" I will literally tell them that I understand why they hire a consultant, that I failed and have cost them (because I really have), and what I'm doing to rectify the problem. It's likely to work out fine, because once they (all the relevant people) feel that I really understand what they need, they're likely to stop worrying and be glad that someone else is making the problem magically disappear again. It will take about 1 meeting per person and some good deliverables, and a week or so for the network of managers talking to managers to calm down, until they feel that way, but me showing understanding and an aura of "humility, integrity and leadership" usually means they go back to all the other busy things occupying their time, confident I'm "on it" again.


I agree, this should be the motto for every freelancer: "Overall be like you are wise, insightful, helpful, and understand engineering and businesses better than anyone they could hire normally, even if it's not really true."


This also works great if you are a regular employee.


I'm getting Baader-Meinhoff'd about 10X Management...


At the start of my career (have been almost entirely in legacy NYC investment bank/hedge fund tech), I thought it would be beneficial to rack up business domain knowledge.

After a while, I arrived at the conclusion that it wasn't. I could try to get enough business domain knowledge to put up an act like I was a mediocre junior trader or banker, or I could better spend that time to improve myself learning tech (and studying for interviews for that matter).

Plus if I were to leave the finance industry (which I'm desperately trying to do), none of that business domain knowledge would be portable, whereas most of my technical knowledge would be.

Just my two cents, but then again, I'm not looking at freelancing.


I think the point of being good with domain knowledge is not to act as a trader, but to understand the needs of a trader. It's a different skillset, but domain knowledge will help you with that.


Software folks with domain knowledge should really become software architects.


If only the software industry, or the world at large, cared about titles we give ourselves. "Software architect" means nothing to most people. Either you can solve problems and add value, or you can't. It doesn't matter what you call yourself. I have used the title "Programmer" for most of my career. No one cares.


I think I understand your point. A little bit of domain expertise might be worse than none at all -- pretending to be a mediocre trader or banker, for example.

The point I meant to make is about understanding and taking an interest in business priorities. When you work for a bank or any company that isn't in the software business it's important to understand that their priorities have little or nothing to do with programming languages or technical debt or the many other things programmers obsess over. It's not that those things aren't important to programmers, but they aren't usually business priorities.

My customers rarely care what language or tools I use. Technical debt is not a big concern to them because they have short-term goals, they know the business landscape will change, and they've amortized the cost of software development and maintenance (or at least think they have). The key insight for me was understanding that "reduce shipping costs" as a business priority may have a technical side, but problems like that are rarely 100% software or technical problems, so it's important to see the entire problem and have the language to talk to people who aren't programmers to get to a solution.

I have observed my own customers sitting through presentations from developers or people selling software products and noticed, more often than not, an intense focus on technical details, but little or no interest in business priorities. Choice of programming language might be important, but it's not a business priority most of the time. Rewriting a legacy application in Rust might make sense in terms of programming and future maintenance, but may not make any sense in terms of addressing business needs. To freelance/consult successfully outside of the small niche of pure software companies you have to try to understand the actual problems and requirements, and resist the tendency programmers have to immediately reduce the problem to code.

I'm not sure I'm expressing this very well. Here on HN I see programmers posting that they just want to code in their favorite language and skip meetings and be left alone by managers and users. I see people complaining about the "stack" they have to use and writing about quitting so they can work with shinier newer things. While I like that mode too, it's not an attitude that will lead to successful freelancing/consulting, because it's too disconnected from business requirements.

Another way to look at it: software development projects generally fail or rack up big budget/schedule overruns because of misunderstanding of requirements, and miscommunication within the team and especially between the team and the business stakeholders. An example from my own experience: a brick & mortar company paid for a new e-commerce site. A week before go-live was scheduled the owner (not a technical person by any stretch) discovered that the new site did not have any provision for shipping charges or state sales taxes. She assumed the developers would know that, because any company shipping physical products has shipping costs and has to collect sales taxes. The developers blamed the customer for not spelling those requirements out. Late project, each side blaming the other, bad feelings, a potential long-term relationship spoiled. At one point in my early career I would have blamed incomplete requirements. Today I would take the customer's side -- developers selling themselves as e-commerce experts should have asked about shipping and taxes, even though those are business domain questions. My solution was to help the customer move to a SAAS e-commerce solution, which meant changing some minor parts of her business process, but kept her away from owning custom software that almost no one would want to touch in six months. I didn't get as much money from that customer as the original developers, but I'm still on speaking/consulting terms five years later whereas the original developers got sued for breach of contract.


You can think about this purely within a tech space as well.

If you are a UI designer, a little bit of knowledge about web developer can help you make UI choices which work for both the customer and for the developer.

If you as a developer know a bit about Ops, you can tweak your website design to hopefully make OPS better. Or atleast start broaching the question with your Ops girl

It happens anythime there is collaboration: knowing a little about the capabilities and constraints of the people upstream and downstream of you (suppliers and customers (perhaps internal)) helps you make better decisions or at least have better conversations etc.


Laughing because yesterday I got Photoshop proofs for some minor web site changes that failed (as usual) to take the responsive nature of web sites into account. I'm baffled why 25 years into the web designers still think the web is a kind of print medium. Not all of them -- the designers who "get" the web are the ones I refer my customers to.


Well let me just take a moment and appreciate you for what you wrote.

This is a precious comment and i totally agree with you the things you mentioned. Understanding the business problem is more important compared to what stack or programming language to choose.

It doesn’t matter if you choose python,golang or java as long as it solves the business requirements that’s all what matters and programming languages are tools but its good to choose the right tools for the job


I agree here. My best projects have been reconciling financial data, or automating reports for MSPs, or copying 100k products from one platform to another, or ...

You get it. Sometimes the problems are cool - like some of the financial recon projects I worked on required neat algorithms (not complex or exotic ones, but "fun" ones) to solve something in Python in 1 minute that a R programmer's (they weren't great) script took 10 hours to solve - but most projects are boring implementation wise.

Actually, most of my really, really good and valuable work doesn't amount to any more than comparing Excel files, and giving you a report on that data. Tons of companies need that.


When my kids (or anyone) asks me what tech skills to learn that will have a long lifespan I say Excel and SQL. Being the "Excel expert" at work is sometimes more valuable than being the Javascript expert.

It's a commonplace observation that data has more value than code to companies. Lots of their data is in spreadsheets and databases (relational or otherwise). I've seen medium-sized companies running their operations in Filemaker, Access, and of course Excel. In big companies you'll find departments using the same tools. Critical to the business, not technically interesting or challenging. Plenty of work/money in that. Same for WordPress sites -- lots of them, most of them need work, not sexy or particularly challenging but you can get top dollar doing that.


Give a man matching CSV columns, get him paid for a day. Teach a man to VLOOKUP, get him paid for a lifetime.

..or something like that..


Yeah but boy can SQL be frustrating! When learning you have to balance rewarding activities with valuable knowledge and skills. Excel maybe isn't so frustrating (unless you're trying to do stuff like, short-circuit "or" statements .. )

I much prefer to take the data into a language -- like Python -- and do analysis on it. Sometimes (actually, 1/10 times in my experience) this is not actually possible, so SQL is a great skill to have.

I know of three fortune 100 companies that run 100+ person departments entirely from Excel. Massive Excel files.


SQL was frustrating to me when I did not know it very well. Taking the time to learn SQL (especially analytical flavored queries) and relational algebra changed not just how I write software, but how I analyze other developers. RA is one of those can't-be-unseen tools that I think everyone either learns directly or spends effort/years doing poorly.


I'll take SQL over Excel anytime.


Hey I did Recon work when I was at a bank and my boss was totally amazed when I wrote a script that performed reconciliation in seconds compared to there method which took them hours to do.

How do you find financial clients how are looking for automating repetitive tasks


In addition to what the poster said, which is really spot on in its generalities, I can share: my opportunities come from (1) my former coworkers and (2) direct pitching to RFPs.

Re: (1), when the poster says "people skills," he means you will not source work from engineers. Additionally, you are not likely to source work from most big-company product managers. It's all about who is in a position to work with vendors in the first place. These will be "ideas" people, people you meet at business school or business-school-lite multidisciplinary design schools, people who themselves may have limited execution capabilities but have the "people skills" to... tell you what the big company wants and how to format your docs and pass their vetting process. People who aren't hung up on just telling you like it is - people who aren't pedants. People who are the opposite of most engineers.

In this respect, startup and big SV jobs will not lead to drowning in freelance work. Go to an exciting grad school, work at a large philanthropy, work in politics, work in research, consulting, etc. - things where you primarily interact with businesspeople who have vendors.


Great input, I always say the role of a good engineer is being a good problem solver regardless of the language or tool.

The role of a good CTO is helping others understand and solve problems.


Checking out your website was fun, thank you for writing about freelancing. I am not the type that wants to do only "sexy programming work", I believe that maintenance work is where the stability is at. Solving business problems with what is already there rather than pulling in unstable codebase of an OS project that may die or is already dead.. are some of the things I live by. Hoping to get into freelancing soon.


> Learn to solve business problems rather than “engineering problems.” No one needs 2,000 more lines of Javascript. Lots of companies need business problems addressed.

Want to highlight this -- it's very rare but hugely valuable to be able to look at the business' needs and solve them, versus "I just work on what they tell me to"


It's said there's 2 kinds of people in the workforce: workers and bosses. It's not about who's a supervisor, as much as whether you can see the big picture or would rather to just focus on your job. No reason why this wouldn't also apply to higher-level jobs like programming.


This is true, but let's not forget that business problems can become engineering problems and vice versa.

Sometimes adding features (solving business problems) gets so tedious that engineering problems need to be addressed!


> If you have years or decades of experience you should have a large network of colleagues to get leads and jobs from.

This is where it gets harder to move to a new town as you get older. Companies aren't looking at you as a young hungry dev they can take a chance on. If they want you at all, they probably want a known quantity. Which probably dovetails with your comment about freelance. Contract work tends a bit more toward known quantities, although there are certainly exceptions (some of the places I've added the most to my resume have been 'consulting' roles)


> Don’t try to join startups or cool SV companies unless you have an inside track. Their recruiting and hiring practices are mostly geared to ensure “culture fit.” That’s code for young single male who will work 12 hrs/day and think free beer and pizza makes it cool.

The exception being if you can come in as a CTO and _set_ some of that culture including making an effort to give everyone a bit more work/life balance. I've been in this situation a few times with companies that are otherwise as you describe.


This is great advice but let me be the devils advocate for a moment.

Ensure you can wrap these experiences with buzzwords of technology.

Can you intelligently speak about service meshes and Istio and load balancer? What about the benefits of typescript vs javascript?

At some point you’ll deal with a recruiter and most are using superficial “checklists” to assess your competency combined with your experience.


I moved countries 4 times, unfortunately a solid local network isn’t transferable outside it’s boundaries


The notion of "focusing on business problems" is - in my opinion - the absolutely correct answer.

Coders will jump through technical interview questions. Business people with great coding experience will say "I will solve your business problem."


These are really helpful suggestions, especially the one about applying for jobs. Thank you.


Every company is hiring if the right person comes along. The right person is someone who can add value and solve business problems. Most jobs aren’t advertised. Getting work through referrals and contacts is far more effective than going through the application process. I haven’t had to use a resume or interview or apply for almost 15 years.


> No one needs 2,000 more lines of Javascript.

What about Gmail? Facebook?


It's (together with the next sentence) a figure of speech. The technical solution might well be 2000 lines of Javascript, but it's the means, not the need.


I'll assume your comment is facetious. If you're serious then you don't understand my point, and you don't understand what employers hire for. Millions of people can write 2,000 lines of Javascript. Significantly fewer can solve a business problem that may require writing some code.


I think I just misread the original post!


Biggest thing you can do is form a thick skin to perceived failure. Best way I've found to do that is to hold very closely the tangible evidence that you are good at getting things done. Then interview a lot until you find something.

See, there's a couple of things to remember. First, the biggest way to sell yourself in an interview is to demonstrate confidence. Not bluster, but gentle self-assured comfort in the face of being interviewed. The ability to answer questions you do know, and to say "I don't know. But I think I'd...." or similar in the face of things you don't. Even if that's to say "I'd have to Google that".

Second, the actual interview...yeah, you might get turned down at a FAANG. But I've had plenty of interviews that were far less algorithmic. Far more concerned with whether i could speak intelligently about things I'd done previously. Even coding; I've had the algorithmic questions...I've also had really simple toy functions that were there just to make sure I could write some code, and formed all of 10-20 minutes of the hour long interview.

The way to get better for both of those is practice. Literal sitting in an interview practice. The more you interview the less you care about any given one, and the more likely you'll stay calm and collected. That exudes confidence, makes you more likeable, and lets you put your best foot forward when it comes to any coding problems.


> interview a lot until you find something.

How do you find the time to 'interview a lot' though? I get about 10 days off in a year, and rarely get interviews with enough frequency to schedule two on one day. In an ideal world, I'd let my current employer know I'm planning to leave, take that as an opportunity to let them wind down my responsibilities and prepare for a handover, and have a good reference for a full-time job search after leaving, but I'll never be able to do that due to employer-tied insurance


If your current job doesn't give you flexible hours I agree that it's hard. That said, COVID has definitely made more things implicitly flexible. While some companies are still trying to plan for blocks of time (the FAANGs for instance), many others allow for it to be spread out as time is available, interview with one person one day, a different person another.


Background, I'm very much a jack of all trades; I can do stuff from up and down the stack, for example:

- phd in biochemistry, can do molecular biology, synthetic organic chemistry, etc.

- wrote a test framework for debugging the machine code for a chip that hadn't been built yet (it taped out shortly thereafter with bugfixes for a ton of critical bugs I discovered)

- designed research alternatives to IEEE floating point, cited by FB AI, live-demoed at a lecture at stanford

- wrote from-scratch orchestration software for linux containers (didn't hit prod) and virtual machines (went into production)

- assembled physical hardware to go into a rack that is a staging environment for the vm orchestration system

- network admin (switches, etc) for the above system

- wrote a layer-7 TLS-terminating reverse proxy server for jupyter notebooks

- several small-time web-ish things for myself, in various languages over the years, none publically hosted (so, yes I know the principles and basic howtos of a rest-ful server, and wrangle react, but I'll be slow at it at first).

Most recent experience (past 2 months):

I can't pass a standard FAANG interview for shit. I couldn't give a damn about finding mindepth for a binary tree. It made me angrier that they conducted the interview over coderpad and had disabled execution. I wasted precious time commenting-out the instructions that the interviewer pasted into the coderpad. (I'd given interviews in coderpad before, and the interviewer asked me if I'd used it before, so I assumed I knew what I could do).

In the past, all of my jobs I've gotten "because I knew someone"; this was the first time I applied to jobs via "normal employment track" and I'll admit I was a bit jaded about the process.

My strategy was to focus on companies that were hiring for the language that I was the strongest at. Relatively niche, so over the last couple of months I only really saw about 10-12 realistic opportunities go by. One strength is that I have a ton of open source libraries that I've written over the years and I made sure to pin these to the top on github. I also took care to make sure that the documentation is above average on all of these libraries (and the readmes all link to them). I figured I have some runway to apply to "other stack" jobs later. Might as well optimize for developer comfort.

Actually only got three interviews. A lot of the "bigger names you have heard of" that use this stack passed on me immediately, probably because I don't have any publicly visible webdev chops. First one kind of wiffed on me by trying to make me a contract tryout (and the team felt super strange, too). Second one, which was a fantastic interview, I failed the tech exam (debug this miscoded UX experience) because I had forgotten how one of the macros that I don't use in the web framework works, forgot to check the network pane in the web console (I don't do a ton of frontend so it's tool I reach for relatively late), and didn't notice that the central problem was a misnamed variable, even though I intuited (and verbalized) that this was likely the problem early on. Third interview didn't have a tech component at all. I guess they can see my output and they trust it? Anyways, got an offer after some short chats, it's in a vertical that I find very appealing, so I'll probably be starting there soon.

Pipeline ~12 -> 3 -> 1. Not bad. Definitely stress-free.

Specific advice:

If you think you will fail standard tech questions, focus on startups, I think they're bimodal in their attitude towards FAANG-style interviews, some cargo cult it like they're gonna try to scale to a billion users in the next year, and some avoid it like plague).

I would say, try to find a niche-but-provably-valuable (obvi don't shoot for "I can program in zig" companies) skills, especially if you would enjoy working in it - and try to find a company that matches this. Your life will be easier, you'll probably have a greater chance of avoiding the FAANG questions. Make sure your resume/github highlights real work done in this niche.

Finally, maybe a positive is that in an early screen, the CEO asked me, "do you know anything about X domain". I kind of demurred and said "not really" and then explained that I thought it meant "<x keyword>, <y keyword>" and used those terms correctly, and he was impressed, saying that I knew more about the domain than most of the programmers currently on staff.

Disclaimer:

probably a lot of this is stochastic, 12 is squarely still in the "statistics of small numbers" range, your experience and tech stack may not necessarily make this possible. For example if you're a java wizard, I suspect you might have a harder time pulling this off, just statistically due to cultural buy-in to the enterprise mindset.... It might be time to break out the cracking the coding interview in that case.

Good luck!


This has been debunked many times in most jobs, lots of interview questions have nothing to do with job performance and CVs are outdated also in the non-tech world. I really feel the hate towards such approach.

Personally I just decided not to participate in such a system. If somebody is treating the interview process like it was 20 years ago, I just finish it earlier.

The best jobs I got was from applying and having a normal discussion like human being with founders but thats mostly startup approach.

There were a few attempts to end credentialism and mind puzzles but its a systemic issue.


Suggestion: Don't call yourself "A jack of all trades." When you call yourself that, some people/interviewers will add "master of none" mentally. Call yourself a "Swiss army knife" or something.


"A jack of all trades is a master of none, but oftentimes better than a master of one."


Yeah, but nobody knows the entire quote. :)


"Full stack" ;-).

Lately the idea of a "specialist" (at least in webdev) has come to mean (in my head): "I really know how to use this particular framework, but do not understand any of the surrounding technology. If I reach a problem, I will bloat the code with more libraries until it starts to work."


Full stack means a specific kind of developer, though. I would never call myself "full stack", even though the "stack" I work on goes from the kernel all the way to UI code.


That's my "stack" too, which is why I once called myself "real full stack developer" once in a conversation. It was intended partially as a pun on the "full stack" term, but I said it only half-joking.


I'm partial to "multi-skilled" these days.

When people ask what are my particular areas, I'll say I mainly do... I'm expert in... I have strong experience with... over the years I've worked in several technical areas...

And list 4 or 5 different specialisms where I would realistically do ok if interviewed in those areas on the spot without warning.

I don't know if that would work for someone who really is a generalist without specialist knowledge at the current stage in their career.

In my case, I really have gone much deeper than most people into a number of different sounding domains. Not different skills or tech stacks, but really very different tech areas. I'm often regarded as interesting because of that, rather than "master of none".


In my case, I call myself a specialist in one of the relevant fields I have worked in the last 3 years. Then I mention all the other things I have done when I have a chance. Don't call yourself a jack of all trades, make them call you that.


If you really are a jack of all trades, it doesn't matter. At that point, you're smart and capable and generally a great hire. If a company isn't hiring well enough to recognize that, you don't wanna work there anyway.


"Apart from X,Y,Z which I am realistically proficient in, I have knowledge a mile wide and an inch deep"


"generalist" has worked for me.


As a systems engineer who usually works in the intersection of HW and SW (usually working with systems requirements or managing interfaces), I tend to add 'master-of-none' myself as I'm proficient in neither. :)


Although I've interviewed for 2 companies in the past that actually appreciated this and basically called me like this themselves. :D They worked on actually complicated stuff and also expected some kind of work sample. Turned out both were jobs where you can burn out quickly so I didn't stay long at either.

But true, normally interviewers already get confused when you mention a skill that is not directly required by the job ad.


though oftentimes better than master of one.

https://en.wikipedia.org/wiki/Jack_of_all_trades,_master_of_...


I say "multiple specialties". Seems to be received extremely well.


From my resume: "Experienced m-shaped professional..."


or just say full stack. I hate buzz word, but sometimes it helps the manager to understand.


As a generalist I've been able to find several positions with this strategy, even while hunting for my latest position during the pandemic:

1) Don't over-filter. Take the time to manually skim each job posting on high-quality job lists, like the HN who's hiring. As a generalist I tend to be a good fit for smaller teams that have diverse problems and individuals I can connect with. Those individuals usually make more open ended job postings that don't sift well through most filters. Additionally, you'll get a better sense of where the job market as a whole is at.

2) Make extra effort in your initial outreach to a few positions. Surprisingly "cover letters" are still effective if they're presented in the right way and through the right channels. A form cover letter may be ignored, but a freshly written pitch for a particular job listing can stand out.

3) Don't copy-paste until you have your pitch figured out. If you're like me you'll find yourself rephrasing it slightly each time you write an initial outreach, and eventually you'll find the common elements that make their way into each. Try to make your pitch shorter each time while keeping those commonalities. A shorter pitch is more likely to be read.


I highly support writing cover letters. Once you get into the groove of having a heavily iterated cover letter template it becomes rather quick to swap things around and customize details to the job posting. In my opinion it really sets you apart from those who don't bother writing one at all, even if their resume is shinier. A little bit of extra effort at the early stage gets a strong multiplier.

Having spoken to those on the other side, "easy apply" positions get absolutely flooded and sifting through so many applications makes the hiring manager gloss over people, skipping them entirely no matter how effective your short blurb is in the condensed list. Imagine how easy it is to scroll past an HN post you're only mildy interested in at a glance. So don't let that be your main method even if you apply to a bunch a day that way. You don't want to fight uphill against probability and human attention span.

I should also add - being early to apply to a position is HUGE. I can't overstate this enough. Once the position has a certain number of candidates each person gets less and less attention until the behavior I mentioned earlier is exhibited.


Can you recommend other high-quality job lists?


HN Who's Hiring has been the best in my experience, for a few reasons:

1) A massive plaintext feed dissuades some applicants, so finding a job posting that doesn't match obvious keywords means you'll face less competition.

2) Most posts reflect fresh openings, or at least openings still actively looking for candidates.

3) Many will list a direct email address where you can deliver your pitch / cover letter directly.

Second best for me has been WeWorkRemotely, though since the pandemic it's been flooded with competition and doesn't have any of the advantages of the above.


Startups want generalists. Larger companies want specialists.

The more areas of expertise you have mid/Sr.-level skills in the smaller the company you should try to work at.

For example someone who can code frontend, backend and run DevOps is invaluable to an early stage company as it means hiring 1 person instead of 3 (which they probably don't have the workload or budget to hire anyway).

At larger companies, your other skills won't net you much because they have 40hrs/week of frontend work they want you to focus on and continue to get better at.


>Startups want generalists. Larger companies want specialists

This is sometimes true. I've worked at startups though that only wanted to hire people that had familiarity in their chosen stack, since they have short runway and don't have time to invest in people's ramp up. In the current large company I work for we generally favor "fungible" software engineers (but, in one's day to day work, maybe a particular engineer will wear fewer hats at a large company).

When you interview at a company, you should interview your interviewers to find out whether this is true in the particular situation you find yourself in.


Right! What I would say is small organizations want / need a variety of skills. They also tend to actually know who they are hiring and why, not go through some HR "process" that filters resumes in an automated way.

Small organizations can be start ups, successful well established companies that are smaller, or autonomous organizations that are owned by a larger company but that need to run their own business.

How would you find these organizations? Startups are pretty easy to find because they need to promote themselves. And you are here so you should know how to find them. For successful smaller organizations that are not start ups, look at what verticals are important (and profitable) in the region of the world you want to live. In that vertical you will find small, really successful companies that are not well known. See if they have openings.


How do I approach job searches?

The short answer is - I don't.

I accept that I have varied experience in many technologies, which makes me less attractive than the single stack experts. I hate my job, but I don't really have any options to leave since my true expertise was built in FileNet and Neoxam. I'm also quite limited since my wife refuses to relocate.


Now is probably a good time since many are going remote...


I feel you bro since I'm in a similar boat.


Does your wife earn enough for u to quit and look for a new satisfying job? It might be worth a try. Otherwise, she is selfish, sorry. Hope you find remote opportunities otherwise, good luck!


Nope, I pay all the bills. She spends more each month on her hobbies than I do on the mortgage. She refuses to pay any bills.


You'll find that nobody advertises for your skillset, because statistically speaking you don't exist. I wound up in my current, quite unique, position, by putting in for a position writing firmware. I wasn't deeply qualified for firmware, but I thought it would be interesting work and I was confident in my ability to learn how to it professionally. They ended up hiring another person for that job, but they also hired me. Now they're trying to hire more of me and finding it impossible. Eventually they'll cave and let me train somebody.

Disclaimer: my skillset includes a lot of non-software engineering, and I work for a company that does a lot more than software.


Might I ask what company, and if they hire EU citizens? (email is in my profile)


To my mind when I interview people there are two types of people who match what you've described:

1) I'm a generalist and go wide but only surface deep.

2) I'm a specialist in multiple areas, I go deep and because I know how to do that I have done it multiple times and can also do it for whatever your problem domain is.

The first of these feels more like your full-stack web developer and the lack of depth usually deter me from hiring... the latter though, the latter feels like an interdisciplinary master that I would want to hire so long as I can see that the candidate is able to apply that to solve our business needs within a month or two of ramp-up.

I haven't seen your CV but I'd make sure that #2 was obvious at the top of the CV as that would provide context to the roles on the CV, each one enriching who you are.


What about

3) I'm a generalist problem solver with expert programming ability, who can adapt to any technology/stack and go deep with your problem domain as I've done multiple times across various fields.

IMO that seems like the ideal hire for any position, as they'd be good for existing problems, and they'd be good for any new problems the business might encounter. Rather than hire an expert in new technology X who knows nothing about your business and existing tech/infrastructure, you can throw Mr. 3 at it.

The only time I don't think that type of candidate would be useful is if the company is competing on technology, and they need someone who has dedicated their career to being an expert and/or researcher in that single specialty (example: machine learning). But even then, most companies don't need someone like that, and those that do could probably benefit from having some 3s on the team in addition to the specialists.


I like this, reminds me of a recent article from harvard business review about generalist. Something along the lines that generalists were better at making connections across domains and can come up with promising solutions to problems.


I prefer to hire generalists, though one problem I do run into is the generalists who aren't pragmatic, and they simply follow whatever is in-vogue at the moment. So you hire them and instead of them helping to drive the business, they decide they want to rewrite everything from Python to Go or Rust or whatever.

So I would suggest you make it clear you want to work within a company's existing framework and not turn it into your personal technical debt playground.


Crypto my dude

The jack of all trades are making 7 figures building “DeFi” infrastructure

You just deploy a smart contract that helps people simplify a more complex task and your code takes a few percentage points

No overhead costs, incorporation, lawyers, banks etc necessary

Never been easier to make money

Basically the key concept that appeared this year is called “composability” where the outputs of one operation can be used as inputs of the next operation, so this is analogous to the interchangeable parts era of the industrial revolution

Smart contracts are extremely limited in the kinds of operations they can do, with most data structures algorithms being too expensive so you never have to employ the bullshit technical questions or any academic knowledge

But you probably should read a book like O’Reilly’s “Mastering Ethereum”. Ethereum introduces a concept called an “EVM” (like JVM) which is used on several more platforms that arent called Ethereum, so you should be familiar with that.

Oh! You also dont need to be distracted by:

“Consensus model ideology”

“I could use a database for this”

or any other self limiting thing.

because “you could also make money”

Lets be honest you were probably going to work for some ad tech startup anyway, all crypto projects have just as little utility for the world while possibly having the argument for much more utility, and you dont have to pretend like you are an investor that wont get zeroed out by VC liquidity preferences


What a waste of talent to have the smartest people work on crypto. Waste of everything for everyone involved.


"The best minds of my generation are thinking about how to make people click ads. That sucks." - Jeff Hammerbacher


"The best minds of my generation are thinking about ways to get spices from the East for cheaper. That sucks" - Some pundit from the 1500s.

There is nothing inherently wrong with talented, ambitious people chasing opportunities where there is the greatest profit. A lot of discoveries can be made in that pursuit that benefit other domains.

This is a similar parallel to how space exploration led to discoveries that were used in other domains. Look at all the knowledge we as a society have acquired about making secure, reliable digital products due to engineers trying to make Google ads get more eyeballs (not to mention products like Google Translate, Google Maps, etc).


Making some shitcoin or Pokémon-on-the-blockchain? Yes. ETH smart contracts? No. I’m bearish on crypto but ETH smart contracts seem really interesting.


> I’m bearish on crypto but ETH smart contracts seem really interesting.

and people really have a hard time understanding that it doesn't matter what the exchange rate is if your exposure to the exchange rate is brief or none at all


Eh different people say the same thing about quants and fund managers in centralized finance

And the solution? Another adtech startup in an industry that is incapable of identifying the smart/most flexible candidates


> people say the same thing about quants and fund managers in centralized finance

both are true


right but the distinction - made specifically for crypto - just leads to an arbitrary pointless discussion about what things have value at all. The people working on a Google product that will be allowed to live for 9 months? The people at the adtech startup? The defense contractors?

Its tiresome and unnecessary. Instead of talking about stacks, say crypto once and everyone loses their minds.

The only distinction is something you respect verses something you dont. There isnt any underlying specific or accurate distinction from other industries to support it.

The question is about employment or, by proxy, making money.


couldn't agree more!!! Crypto is a waste, got build something that has value for real human beings.


because SV doesn't do exactly that? Elizabeth Holmes anyone? Give me a break, 99% of stuff made anywhere on the internet is a waste for "real" human beings.


Then work for the 1% stuff that is good.


Not everyone has that option/luxury. "Good" is subjective anyway, just find something that you enjoy and doesn't increase the collective suffering of the human race. Tell any naysayers to pound sand.


"having trouble getting a job? cast a smaller net"

sage advice folks you heard it here first


I primarily compare it to the silly social media apps I was making for $50-$90 an hour for other people

And then for $120 an hour

And then being rejected from every job for 6 months straight while I got incrementally better at leetcode, and saying the right thing in behavioral interviews

That was a much more quantifiable waste that had no value for any real human being

Its really hard for me to make the distinction you feel so passionately about


Is this satire? Reading your post I am still unsure about where the money would be coming from, or why would anyone pay it - what problem is being solved here?

Can you give me an example of a "smart contract" that simplifies a complex task and that can't be done with conventional code and a SaaS?


People in this market don't want SaaS because it's a black box you control, they want dependable functionality that won't change.

The money comes from other people already using smart contracts. If you've been stuck on that argument for some time then its time to notice that the ship for your worldview sailed a long time ago.

People that are doing multiple operations with separate smart contracts would like smart contracts that combine that functionality into one. You can take a cut of their funds for providing the service. Simple as that. There are more elaborate examples in sister and cousin threads on this post.


I'm ignorant to all this (well, I guess I already knew that ETH has smart contracts). Can you point to a basic rundown of what "DeFi" infrastructure even _means_?


Could you recommend any resources for learning more about what you've discussed here?


Not really, you have to learn by doing. Take $300 and spread it across various defi projects - not their tokens, their applications - and see how you are making or losing money, possibly all of it. See what existing tools help you see that better. Notice where they can be further improved.

Otherwise you will be stuck in a youtube promoter rabbit hole, white papers and medium articles that still dont make it easier to understand what is going on. Usually the currently deployed code is very different from what is described.


To elaborate, go down the top 20 projects on DefiPulse.com and use each one. Forget about what each project’s website says, just figure out how to use them. Forget about their tokens except as for inventory to use their product, if the project has a native token remember that it is not a surrogate for you to express your excitement about the project, you are here to learn how to earn more things that can be exchanged for goods and services, food and shelter, not here to use your existing capital for trading. In fact, consider all of it as existing for entertainment purposes only. Say you work in entertainment to nullify the utility criticisms others might have when you utter the word crypto.


> You just deploy a smart contract that helps people simplify a more complex task and your code takes a few percentage points

Could you list some examples? I didn't realize there were practical use cases for Ethereum yet


So “yield farming” is complex and expensive and can involve closer to 8 expensive transactions to get started.

You can make a smart contract that lowers it to 1 transaction, automating an operation usually accessed between two or three websites. It likely wont make that much less expensive but it will save people time.

What typically happens is that the services which already do this are a combination of being more expensive or inundated with combinations and wont pay attention to new things on the market, catering to only the largest most hyped up and engaged communities to provide conveniences to.

So you can instead until you get to the same place!


1. Make multiple versions of your resume tailored to different kinds of positions

2. Sharpen your skills in detail areas of specialization before interviews

3. Make a list of the coolest things you’ve done

4. Practice stories related to those things that you can bring up in response to various questions

5. Select different items from that list to highlight for different positions

6. Build an additional portfolio of work to support your capabilities to succeed in the positions you’re applying for


This is the list right here. Particularly the emphasis on story telling; if you've done anything interesting in your past work, your future employers want to hear about it. You are the one who can overcome challenges and pull off a victory!

Nobody wants to listen to a dry list of technology proficiencies - but they LOVE hearing a good story about how you solved a real world problem.


These days, Leetcode seems like the way to go. If you can churn through Leetcode and do some practice interviews on solving them with someone else, you should be good.

If you're having trouble getting responses, I help people (hate advertising on here but I do this for fun for free) by providing connections to hiring managers (https://foxrain.ai)


46 years old, 3 years into my first CTO role. my algorithm depends on pretty regular professional development outside of work, but every time i've had more than 1 offer on the table, i choose:

where compensation >= sufficient order by entertainment_value desc


FAANGs hire generalists. Speaking as someone with experience at 2 FAANGs, the entry bar to some of them is not as high as people make it to be.

The whole point of a generalist is to be that jack of all trades that management can just throw into any "high priority" project to get it shipped. These corporations are so big now that they've mostly wrapped all the existing tools or have developed their own, so the only skill you need is to learn a bunch of custom tools (with little documentation) sufficiently fast to be productive. So just learn the basic algorithms to pass the interview and then proceed to (probably) never use that knowledge at your FAANG job.

If you're on the older side, don't think about it. I personally know someone who's 65 working at a FAANG (anecdata but still). If you interview with a kid, they might ding you for "culture fit" because they're kids, but hopefully the hiring manager and the bar raisers are mature enough to see past that.

Your biggest hurdle will be the internal interviewer discussion that based on your experience you should be at level X, and, if in your interview you didn't show that level, that you might be unhappy at X - 1 or X - 2.


Interview a lot. I just wrapped up an interview 5 minutes ago for a job that I will not get. I had a shot at it, but I'm rusty on some specifics they need. It was a great learning experience, and because I was a "close" candidate, I don't feel guilty about wasting their time. Just not a fit.

Tomorrow, I'll apply for other similar roles and I'll interview again and again until something sticks.


> because I was a "close" candidate, I don't feel guilty about wasting their time.

Fuck that mindset. They're being paid to interview you, and you're (likely) unemployed. If anyone should feel guilty, it's the recruiters wasting your time making you jump through the many pointless hoops common in tech interviews today, and ultimately hiring someone else based on what is likely arbitrary reasoning (because in general, most people are lazy/bad at their jobs. Especially recruiters.)


For me the sad truth is that I don't. I'm a junior pentester, junior to medior developer (depending on whom you ask) and know a lot more about data science than I'm supposed to for "my profile".

Now I'm in a job where I'm simply judged as a developer. I've noticed that even when I find vulnerabilities and show them to the dev team at the startup I work, they don't care. When it's a critical, they care a little. They actively dislike that I try to do more than just programming, since it isn't of my concern. And yet, this is the most graceful company that I've been at since they hired me, out of the 100 I applied to.

So yea, I'm floundering. I want to help out with marketing and recruiting. I want to help out with some data science. And I definitely want to hack the company I work at in order to harden your product against hackers. I know my main role is being a dev, but I hate being only seen as a dev.

If any company hires people based in Amsterdam and would like such a generalist dev, I'm for hire. I also speak English ;-)


curious question since you mentioned you were a junior pentester, do you see any value in the CompTia Pentest+ cert? e.g. does it guarantee interviews? or its simply a baseline etc..


I've never done pentesting professionally, but I trained with someone who passed his OSCP, and while he was quicker, my knowledge was a lot deeper (especially in reverse engineering). We considered each other to be at each others' level. He's a junior pentester now :)

I think he did find that his OSCP helped for recruiters. We both don't know anything about CompTia Pentest+

------ I got a reaction from my friend.

Based on his impression about CompTia Pentest+: it depends on what cert is valued. In The Netherlands OSCP and CEH are the most well-known. CompTia Pentest+ looks most like CEH in terms of design and exam format (based on his quick glance of the curriculum). Take a certificate that recruiters actually look for, because that does help.

Even if the certificate doesn't match the job that you're doing, it shows a lot of dedication. For example, the network skills that my friend learned at OSCP (and while we were training) are almost not needed for the web pentesting that he does.

He also says that his company feels less hesistant to hire someone with OSCP compared to CEH. OSCP is quite hardcore compared to CEH.


Uniquely and by blowing up the ATS bots. Generalists aren’t favored by non-human companies. Don’t waste your time with them. Find your fit and alignment with other individuals. They are out there. Good luck!


Thanks! :)


If you have skills outside engineering too, the job title for this is "product manager".

I formally switched to product management in my last job. I have background doing startups, and this combined with jack-of-all-trades engineering, makes for a perfect technical product manager.


Regardless of what you perceive your technical specialty to be, you need to create a "sales pitch" and sell yourself to the job you are applying to.

Similar to waiting tables at a restaurant, 99% of people don't want a list of the ingredients, nor do they want the waiter to say "I like everything on the menu because im a food generalist". Customers want to hear "The burger is great because its cheesy and juicy".

The scope of how you are selling, whether its skills or physical objects, is very important. Calling yourself a generalist is just setting yourself up for failure for a job search. Sell yourself to the role, don't cast a "generalist" net and get upset when nobody thinks you are a correct fit for a role.


Smaller companies.

Every giant company is looking for specialization. If you like having your hands in everything and it’s where you add the most value, look for smaller companies where it’s possible.


Im a full stack dev, using coldfusion (like adobe's version of PHP). I feel stuck, and like I am unable to even have the time to master anything.. When I tell people "full stack w/ coldfusion and a lot of SQL", they either tune out, or say "oh man that sucks" then tune out... and the interviewing process seems like a broken mess of bullshit for a lot of meaningless apps.


You should do coldfusion freelancing, if there's still something made with it.

I knew a guy some years ago making big money with his coldfusion experience.


Most of what I have seen is terrible. For instance, here is one paying 9-12 dollars per hour! That doesn't even meet minimum wage in my state.

https://www.upwork.com/job/Node-React-Angular-expert-full-ti...

Of course, you also need 5 years of experience with node, and be familiar with angular! What a joke of a posting.

Here is another asking for an expert, it specifically says do not apply if you are junior or mid level, and its offering 15-35 dollars per hour.

https://www.upwork.com/job/Lucee-Coldfusion-Developer-Linux-...

Personally, I'd really like to step away from Coldfusion into straight SQL or something like that, but the CF really puts people off for whatever reason. I've almost thought about not putting it on a resume at all.


Upwork is an absolute waste of time. Have you tried looking at conventional, local job boards? I'm sure there would be big businesses with legacy ColdFusion stuff that needs maintenance/rewriting and are able to afford paying decent $$$ for it.


I would drop coldfusion from your CV and simply include modern relevant languages. Don't mention cold fusion during your interviews. Cold fusion should no longer exist for you.


I like to say that I specialize in "loathsome technologies"; makefiles, maven, xml, SCM and CI systems, security, etc.

Though I have done everything from kernel work to web development in my career I often end up working on or helping with the build and release engineering aspects. I will also frequently end up being the person who works on the product cybersecurity and security model.

It certainly isn't the most "fun" work but it is necessary and usually gives you a deep understanding of how the system works. This is especially true for older products.

Part of the problem you are facing is the assumption that by hiring smart people they are hiring people who can do anything, the people are interchangeable, fungible. Even if the "smart" part is true the willingness to work outside of their preference areas is not universal. Developers are often entitled, spoiled and fussy. And why not, with the variety of work opportunities and amount of choice available they can generally afford to be picky.

So it is not enough to say that you are a jack-of-all-trades, but that you are happier being that way and are explicitly willing to take on tasks/roles that may otherwise be hard to fill. This doesn't mean that they can assume that they will only give you the shit-jobs; it is still negotiated. If they want to you work on, for example, QA tooling and you REALLY hate that make sure to negotiate that the work is not open ended and for a specific project or time window. You are solving a problem for them, usually temporarily, and they still need to come up with a long term answer. Don't get yourself stuck in a rut of one particular assignment, it is too easy to wind up being stuck in that role for the rest of your time in the organization.

You can use staff turnover, particularly management turnover to your advantage. Every staff change creates a new configuration. Use these occasions to adjust your role and volunteer for opportunities which interest you.


Don't underestimate yourself. We're all skilled at some things and not at others. Apply to jobs that look interesting to you and try to get them!

Hiring managers are often faced with the same dilemma: "my job requires a little of this and a dash of that and a bunch of this other stuff. And I don't want a bunch of bums to apply, but I don't need rocket surgeons either." and we take a random stab at a job description and desired qualifications and post it.

Find a job that looks interesting, tailor your resume a bit to fit, and see what happens. If you get a call, strike up a conversation about your experience solving disparate problems and your interest. Hiring managers (usually) care more about that stuff than any specific skill set, even if the job description might imply otherwise.


I have a website that starts with my freelance price and then lists previous projects that I have worked on.

That website also states that I'm open to offering reduced rates and/or becoming an employee. So far, all of my jobs started out as me being hired as a freelancer and the company later approaching me to re-negotiate to become an employee.

I've had only one regular job interview, but it didn't go well because they were not willing to guarantee me a room with a window and space to bring my collection of potted plants. My opinion is that the problem there was that we negotiated the employment contract too soon, before they knew why they should value my work.

Also, learn related topics. I've done documentation writing for patents and bookkeeping, which greatly helps when you're hired to solve an actual business problem.


What's your freelance price?


> I'm also sure to fail googlable technical questions so I was wondering how others might approach this.

I would do the minimal amount of studying that's required to pass this hurdle, and then you'll probably be great at acing the rest of the interview.

Pretty much no matter how good you are, you're going to have to pass some classic interview problems, so it's worth the hoop jumping investment. Leetcode is a good place to start on algo problems

Also would recommend refining your pitch / resume to 2-3 large technical problems you've worked on and the outcomes of those. Something a hiring manager reads and thinks "okay they know what they're doing". "Jack of all trades" is sufficiently vague for them to be like "i have no idea what this person works on"


I went in to relatively technical product management.

I miss some programming, but do it privately on the side or sometimes for some odd-jobs at work when it's easier than asking someone to do it.

I will probably keep on switching industries when changing jobs (which I don't do too often though).


I’ve been concluding that a technical product manager role could be a good fit for me also. But some searching led me to believe that “technical product managers” make less than both “product managers“ and “software engineers.”

I guess this is my roundabout way of asking: Did you have to take a pay cut?


I never was a well paid dev, so no. Also I applied for normal product manager roles. Product/project/team lead/business analyst - with these roles you usually only know what you got after the interview (if it says project but is a good fit just ask for a title change after a year for your product-CV).

Technical knowledge is a plus you can charge more for.

I just found it challenging not to have any lack in the other areas, but with the variety of the role and a bit of endurance you can find a good match with a company that needs what you can do.


Your a jack of all trades. Pick one trade and try to sell. Keep repeating with different skills until success. Very few need all of your skills but as a jack of all trade you get in with one skill and advance with another.


> How do you approach job search?

I call it "Devops" and apply there. It's one (misnamed, but whatever) position that appreciates front- and backend development experience, and system administration experience.


I just joined Toptal, in a month it gave me so many very interesting work opportunities, client contacts and confidence in my market value. It doesn't seem difficult to stand out among the other devs there (or maybe all the good ones are already fully booked), and my rich past experience has been nothing but a plus in the eyes of the clients.

To be frank though, I consider still working with my own hands after XX years of experience to be a big, big failure.


Take opportunities one at a time and study what they are asking for. What does this particular hiring manager need? Highlight your strengths in only the areas they are focused on.

I had a very challenging time getting a job offer the last time I did the interview gauntlet run (had 17 years experience at the time), because I kept talking about how many different skills I could bring to the table. I should have focused on listening to what they want.

Once you are inside the company, you can employ your jack-of-all-trades skills.


Hey!

I’m pretty young and not an engineer but I’ve found that by being interested in a lot of things and seeking out people / companies rather than specific roles I’m always in high enough demand.

When I see or meet someone interesting I make time to talk with them about it. When I see a role online I reach out to someone in that role. I often write “cover letters” that are actually focused on what’s cool / challenging about the situation a company could be facing.

I think knowing people and being known is the best option.


> being known is the best option

YES.

I can't recall the psych principle, but people are genuinely more likely to pick the political candidate whose name they simply know, even if they know they're not great, over the candidate they don't know. Then add primacy bias to that, and … well, you get it.

Knowing more people increases the likelihood you'll be brought up, the likelihood you're the first name on people's minds, the default choice when the dust settles.


There’s no such thing as “Jack of all trades”. At most there is “Jack of several trades”.

My background is game dev. The typical “Jack of all trades” webdev has minimal overlap with game dev skills. Unless it’s working on the backend of a mobile game, in which case the overlap is enormous. The skill sets of a “Jack of all trades” AAA console dev and “Jack of all trades” webdev are extremely different.

Point is you do have speciality skills. Identify them, embrace them, and don’t sell yourself short.


but I feel it's quite difficult to convey this when applying for positions.

Sometimes people pay for help with their resume, cover letter, whatever. Sometimes that's useful.


Since this is now on the front page, I will add that I do that kind of work.

I wasn't comfortable saying that before because I didn't like the idea of sounding like I was trying to press the OP for money, but since this is now more general interest: If you are reading this discussion because you are hoping for answers, check my profile. You can hire me to give your resume (or cover letter or Linked-In account, etc) the once over and give you some feedback on it to help you try to do this better.


Isn't full stack developer a common name for this?

If you're contracting though, you really want to sell what business problems you can solve rather than focusing on tech.


I'm not a web developer - my experience is mostly with embedded systems overlapping SW & HW functional performance in avionics, industrial robotics, and medical device etc.


"Embedded systems & Robotics Generalist" sounds pretty badass to me. Technically you can even say "Embedded Systems & Robotics _Specialist_". since thats where your specializing, _not_ in web, not in angular/react, not in node/django/rails etc...


What area are you in? - There are always lots of recruiters looking to fill various robotics roles at well funded startups


I dunno, full stack developer always comes across as frontend developer who also writes some node to me.


Yeah, when the 'full stack' name appeared, I thought it applied to me, cause I fiddle with kernels and write bad CSS and terrible JS and everything in between (most of which isn't as bad as my JS), but the term has been refined to frontend that might dabble in just enough server side to get their job done. (Which is a fine job, but not mine).

If you're a pretty broad generalist, most likely the way to get new jobs is networking. Someone you've worked with is hiring and would be happy to work with you, and you have to find them (or they you).


Yeh its a grossly abused term.

What it should be is you can work at /understand all the OSI TCP/IP layer's

Layer 8 and 5 is a bonus - politics if you haven't heard the v old joke


Yeah I'm mostly a backend developer who also does infrastructure work, and feel "full stack" misses the mark for me too.


Best gig I had I found on gumtree. A very rich guy wanted to create a startup. We clicked over the phone and I joined the small team. We worked in a basement of one of his posh houses in the city centre. We could sleep there and there was always fresh food delivered by his house staff. I spent two years with them. He then sold the company for just below 50 million as it was no longer fun for him.


Did you get a cut or where you only the tech labor?


A different situation brought me to a similar experience.

I have a good professional network but it's mostly local (Argentina). I've been planning to live here all my life but it's not a good place to live anymore. I'm planning to relocate to Europe so I had to start with the interview process again and being a "generalist problem solver with software" is getting difficult to get good job offers.


I use a simple process that has worked out well so far.

- I only talk to founders either through references or linked in - but before that I start publishing blogs and ideas so they get sense of my skillset. This includes points like how I learned a new skill on the go, how I converted an opportunity into feature that made impact, etc

Blogs have always got me good leads from 2nd degree network.

Stick to this simple routine. Good luck.


One trick is to apply as a specialist for a given role. During the interviews ask questions that give you a sense for how easy it is to generalize internally.

You can automate your resume-specialization by building a template in HTML, store role details in a DB (a JSON file would do), and generate unique PDFs with `weasyprint`. Something like `11ty` or `jekyll` makes this fairly doable.


network network network.

Focus on your network and asking people if they know anyone who is hiring. Don't put people on the spot and ask if they are hiring, but ask if they know anyone.

When I last job hunted, I created three resumes--software engineer, devrel, devops engineer. The same jobs were on each resume, but different duties and accomplishments were highlighted.

I would also pick up some contract work if you can--the barrier is a lot lower and can often lead to a FTE conversation. If you are in the USA, use the ACA health exchange for health ins (not sure about other countries).


Keep applying. Don't rationalize it, there are a lot things beyond your control when they choose a candidate over another.


I would look to my network as the primary option to look for jobs.

The Google type of questions is a pain, Companies are beginning to realize that.


Just call yourself a "software engineer". What you're describing is not a jack of all trades.


a bit hard since knowing a lot of stuff (broad) but shallow (not deep/focussed at few thing), just do a jobsearch randomly '__') mostly always land on medior position (not good enough to be senior, not too noob to be junior..


> if you have years or decades of experience you should have a large network of colleagues

yes, but more often than not, those colleagues best interest is not YOU but their employee referral :) .

At least in my experience, they often try to oversell the company they work at, as the best place to work, trying to get you to join, even if they know it is crap.

I do my own research and always take "ex-colleagues" advises with a grain of salt, basically I mainly trust my judgement, balance sheets for public companies and buzz around like glassdoor, blind, etc .. :)


It's been a few years, but prior to that I went through a period where I worked I did a job search 3 times in a little more than 2.5 years. Here's the process:

1. I start by reaching out to people I know - bosses or teammates I've enjoyed working with, recruiters that have proved trustworthy and so on. People who now me and who have worked with me before know the value I bring, even though I don't really excel in any one area. (Early on in my career, this wasn't literally "people I know," this would be more connections through my school.)

2. Since a lot of interview technical questions skew towards Stuff We Learn in University, I usually skim over my college and grad school text books. That way, if someone throws something at me that I haven't really dealt with in 12 years, I can at least have enough freshness in my mind that I can problem solve through it.

3. I practice problems from a "programming challenges" book like the one by Skiena. I do some of these at a computer. However, since many companies do coding challenges on a whiteboard and these are timed, I try to recreate this by doing some coding problems with pencil and paper while timing myself. Whether or not it is a good idea for companies to do coding problems on a whiteboard is an interesting question, but in the course of a job search, but this is the world we live in. Writing programs while timed is particularly stressful, but by practicing beforehand I find I'm able to adapt to the stress better.

4. A lot of the value we provide (both as experienced engineers and as jack-of-all-trades) is best demonstrated through historical examples, and many companies ask about historical examples. So I make sure that I've gone through the important projects I've worked on in my career, and can talk about the situation I was in for the project, what I did, and what the result of the project was.

5. It's hard to know who looks at what in an application submission, but for any company I apply to I write a cover letter explaining why my unique set of skills makes me a good fit for the particular role I'm applying for. As a hiring manager, I saw people clearly copy and paste other cover letters (e.g., I was in advertising and I'd get cover letters ending "... and that's why I want to work in finance"). As an applicant, I write each of these from scratch, going through each item in the job description and saying something very brief about how that's a thing I've done before. (Earlier in my career, I would use examples from undergrad and grad school.) I've generally had pretty good response rates with this strategy.

6. Across all steps, I work in as much as I comfortably can that as a jack of all trades the value I provide is not that I can implement solutions in the area I'm hired for soon after being hired (although, I can), it's that I can handle the uncertainty that comes in many environments, and I can talk about examples where I've done this in the past. Some companies appreciate the value this brings, but some do not. The ones that don't will probably under value you.

I hope it helps!


I don't, i gave up and run my own business, sadly unrelated to tech


I don't.

I have been a professional job seeker for 11 years since I have left college. I guess I would call myself a front-end developer though I have never had a front-end job. I am able to find work here and there as a freelancer and I have worked one tech job in QA in my 20s. I am now in my 30s. I make the majority of my money flipping stuff and working in service industry jobs and occasionally find work as a designer, developer, photographer, videographer, video editor, and much more....I know how to do a lot of things, but finding a job isn't one of them.

This has developed a lack of trust in humanity for me and a great mental illness. I have and probably won't ever trust an individual again when one grows up trying their hardest to develop skills when skills don't matter.


This hits close to home. Working front desk at a hotel currently. Just the latest in a string of crummy jobs, stuck climbing up and falling down the bottom rungs of society.

Had a couple programming jobs after college. One was a startup that folded after a couple years when the president, CEO, and CFO all got indicted for tax fraud. The other was at a game studio a friend from college started that seemed to be successful... Then he started using company accounts as his personal piggy bank and stopped paying his employees.

That part you wrote about developing a lack of trust in humanity really resonates with me.

By now, I've lost touch with anyone else I knew in the industry. A couple medical issues wiped out my savings, so I don't have money to relocate. And the only jobs I've been able to find in my area barely cover monthly expenses.

These days, I try to forget I'm only ever a few paychecks away from homelessness and utter destitution. Instead, I just focus on keeping up my health and tinkering with the latest technologies. All I can do is hope someday a position near me opens up for a Rust dev or K8s admin or whatever the next thing happens to be and be ready when it does.

Anyway, hang in there. You're not the only one stuck in a rut. Keep holding on to whatever it is that still brings you joy. Never let them take that from you.


We need more stories like this. I can relate. There is too much survivorship bias in society. To those trapped in the pit of hopelessness, don't give a f*. I apologize for my language, but crude as it is, it has solved a lot of my mental weaknesses.

I would say to everyone trying to fit in a world that looks for cultural fits - do not try to put a mask, find those like you and be straightforward to recruiters. Some will resonate with you and others will just brush u off.

Without sidelining to ideologies, I feel that society really needs to think again about a basic income to sustain human life. It is easier said than done but it is also easier said to people to 'fit' as a jack of all trades in an specialized world. Sometimes it is easy but most of the time, it is crushingly difficult.


If I knew that getting a job had nothing to do with skill, I most likely would have never tried in life and be happy because of a lack of college debt. Now, just hopelessness.


Half of my body is numb and I've needed a doctor for 5 years. I do the opposite: ignore health and hope this all ends soon.


> I make the majority of my money flipping stuff and working in service industry jobs and occasionally find work as a designer, developer, photographer, videographer, video editor, and much more....I know how to do a lot of things, but finding a job isn't one of them.

If you're doing all those things, it sounds like you're finding lots of skill-based jobs, as well as selling directly. In what way don't you know how to find a job?


I am making money. I have never had a job with benefits. Never had insurance. Like I said, I can find ways to pay half the rent here and there.

But based on the experience here, it seems like people found work out of college, were able to focus in field because their expenses were paid for by a company and were able to create a family. None of this is an option when I spend 12 hours + a day trying to find money doing various work I genuinely don't care about.


Sadly lots of jobs are things people the employee doesn't care about :-) I'm still not clear on what skill it is you're lacking to find a job - as you say, people find jobs at a young age, for the first time. It's not (exactly) a skill to practice in itself, although there are practicalities that can be hard to get right depending on one's situation.

What is the (part of the) skill you think you're lacking?


No clue, when I get a decade's worth of automated responses with no reason, I most likely haven't grown or learned anything to help me get a job.


I'm having a hard time as well. Frontend engineer who hates react. i've been unemployed for 6 months. I've applied to QA jobs, Technical PM jobs...i gotta get out of this programming racket at 46. nobody hiring an old fuddy duddy like me. Hell I even see job postings that say "co-founder/CTO, equity only. Must be early 20s"


Hope it gets better for you soon. I'm a systems engineer who dabbles in coding and have been overwhelmed by all the frameworks and whatnot. Wish there were companies looking for just competent engineers to fill probably-mundane-day-to-day-but-mostly-reasonable-otherwise roles.


> Hell I even see job postings that say "co-founder/CTO, equity only. Must be early 20s"

That's code for 'I'm an "ideas" guy, and I need someone to do all the heavy lifting for me. We'll be hanging around work for 18 hours a day. Oh, you'll get 5% ownership'


5% if you are lucky :)


I hope things turn around for you as well. If you have free time and are interested, you should check out https://docs.stimulusreflex.com/. It's a new way to build reactive interfaces with Ruby on Rails. I'm not affiliated with the project directly, just another person that can't stand React.


You could try working on an online business as an alternative. You already know how to make websites.

If you're better at programming than design, a SaaS might be an option. Otherwise, you could create content that could be monitized with affiliate commissions or ads.

Of course, an online business takes time, but it could be a valid strategy in the next 2-3 years to generate enough income to cover your expenses.


have you tried alternatives? I don't like react as well, angular is even worse for me (personally) to work with, but I really love Vue.js. And the market is growing year after year for Vue developers!


experienced in front-end as well. but not looking for jobs. tired of front-end switched to data. there's plenty of data jobs out there. I'm trying to set up a data consultancy instead of finding a job.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: