Ask HN: Jack-of-all-trades of HN, how do you approach job search?
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.
256 comments
[ 14.4 ms ] story [ 452 ms ] threadIf 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.
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'
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.
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 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.”
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? ;)
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.
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.
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 ...
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.
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
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.
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.
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.
..or something like that..
How do you find financial clients how are looking for automating repetitive tasks
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.
The role of a good CTO is helping others understand and solve problems.
Pretty sure you can solve business problems in Javascript
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.
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?
Well, you can disagree, but you’re wrong. Just look at what the interview processes are optimised for.
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).
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 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.
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. : )
If you're doing short-job, multiple-contract work, definitely salt active effort to taste.
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.
Just being a good human being will get your far in life irrespective of tech stacks.
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.
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. :)
Wait, I wasn't supposed to be a complete ass? Uh oh. :(
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’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 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.
[1] https://www.gov.uk/dual-citizenship
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.
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.
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.
I believe the introvert's response here is "I wouldn't want to be approached if they're just looking for work"
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.
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 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 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.
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.
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.
Let me know if you’re up for a chat :) if not, then thanks for the comment! :D
I limit my LinkedIn network to people I actually know, no offense.
After trying hard multiple times - Ive said F IT and went full b2b. Ppl may not like me, but they need my skill..
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.
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.
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.
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 know that for some: years and years of trying isn't enough to create neither type of social network.
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.
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...
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.
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.
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.
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."
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.
You know when people say, "marriage is a lot of work" ? Meaning the relationship needs to be tended. Same here, when maintaining connections.
Coders will jump through technical interview questions. Business people with great coding experience will say "I will solve your business problem."
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"
Sometimes adding features (solving business problems) gets so tedious that engineering problems need to be addressed!
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!!
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.
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)
What about Gmail? Facebook?
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.
Sometimes people pay for help with their resume, cover letter, whatever. Sometimes that's useful.
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.
The Google type of questions is a pain, Companies are beginning to realize that.
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.
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."
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".
https://en.wikipedia.org/wiki/Jack_of_all_trades,_master_of_...
But true, normally interviewers already get confused when you mention a skill that is not directly required by the job ad.
If you're contracting though, you really want to sell what business problems you can solve rather than focusing on tech.
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
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).
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.
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 call it "Devops" and apply there. It's one (misnamed, but whatever) position that appreciates front- and backend development experience, and system administration experience.
where compensation >= sufficient order by entertainment_value desc
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.
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.
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.
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.
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?
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.
What is the (part of the) skill you think you're lacking?
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.
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.
Disclaimer: my skillset includes a lot of non-software engineering, and I work for a company that does a lot more than software.
Tomorrow, I'll apply for other similar roles and I'll interview again and again until something sticks.
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.)
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.
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 ;-)
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.
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.
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.
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.
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.
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.
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.
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
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.