Ask HN: Career Advice for a Generalist?
I'm a software dev with about 4 years of experience, not in a single tech stack. I also have 2 years of experience in teaching it. Double bachelor (information science & psychology), double master (game studies & computer science). I'm in between jobs and I'm taking some time to think.
The issue is this when I had a conversation with a friend.
Friend: the main issue overall was that your CV created the impression of a non-dev masquerading as a dev
Me: no, I view myself as capable of learning anything. I'm a problem solver. Relationship issues? I might be able to solve it. Coding issues? Gotcha there. Sleep issues? Let's figure it out. You want to make music? Let's jam. Space ship needs to go in space? I'm light on knowledge but I can figure it out. I'm willing to learn anything at expert level with the concession that I won't be the best expert. But even experts will be like "he can run with us".
It still bugs me that I'm light on knowledge in several fields. I know it's not feasible to know everything, but I can't help but be curious and just try to do it anyway.
I have several instances of professors mentioning how they were astounded that I was capable of learning their course, given my profile. But the thing is, when one gives it their all they are capable of _so much_. How can't they see that?
The issues I'm running into is I show my full self at a job. Job interview-wise this is not a smart move, but I can't help it. The world is fascinating, I can't hide it!
I've always had a tough time in the job market, given that I always had to hide this part of myself. Does anyone have tips on what a generalist like my profile can do?
12 comments
[ 2.9 ms ] story [ 37.2 ms ] threadsaving money = making money.
There was some old post about a job interviewee at FB getting treated poorly because he thought his linux experience should in some way count toward the Solaris requirement (it didn't).
One reason I will call hubris, evident from your post. Your background in psychology may inform you that people who have put more than four years into (for example) software development may not appreciate someone with less experience calling themselves an expert. I expect that would go for relationship counselors, somnologists and neurologists, musicians, actual rocket scientists.
I can't speak to your actual expertise or abilities, but your self-description reads like a case study of the Dunning-Kruger effect. You can think about why potential employers might find that overall impression off-putting and hard to believe without more evidence.
Businesses recruit and hire people who can add value and solve problems. You have to sell yourself as a fit for the organization, and someone who can add value, right away. In the absence of objective metrics of competence (the case with software development for the most part) employers tend to look at experience, track record, reputation. They probably won't give a lot of weight to self-assessments like you offer, or hearsay opinions of college professors.
The word expert was a bit unfortunate. By expert I meant compared to someone who isn't a programmer. I suspect you mean it in the sense that it is a person who has worked for 20 years in compilers, for example. To them I'm not an expert. But the thing is that such a person could explain to me what they did and I'd understand most of it in most cases. A strategy consultant could do the same thing (I'd understand that too). Explain code to the business consultant though and there is 0 understanding, unless they do it as a hobby.
So far: programming, physics, math, theology (Buddhism - e.g. reading scriptures of Myanmar from a 1000 years ago and learning there are many interpretations of the texts) and related fields have been fields that seem hard to grok. One of the reasons I like programming is precisely because I found it hard to grok and still find it hard to grok in advanced areas.
Psychology, marketing, music (depending on the sub-discipline) and UX-design have been easily grokkable. People teach me a fact and I am capable of understanding it and applying it and reason deeper about it.
In my opinion, the hard part isn't learning, the hard part is grokking. With programming (at uni) I've often asked myself whether I was too stupid to understand it. I've never had that issue with psychology, game-design, business (courses) and UX-design (I did a one month full time bootcamp for fun).
Someone with twenty years experience writing compilers could not "explain ... what they did" in any reasonable amount of time, and not in a way you would understand it at their level, or at the level needed to write a compiler. That's true of all complex skills. You might think you understand or "grok" something because you don't have to produce value with the expertise you think you have. What you describe usually gets called "book learning," an often necessary but usually insufficient degree of familiarity with a subject.
Hundreds of thousands of people who took university classes or read a book or went to a boot camp believe they can write professional/commercial-quality software. They delude themselves, and employers understand the difference between reading a book about programming and having experience writing production code, working in a team, understanding and delivering on business requirements. The increasingly high unemployment and diminished job prospects for junior and inexperienced developers reflects that reality -- employers want people who can walk the walk, not just talk the talk.
Humility and modesty come with maturity and age for most people. We all figure out eventually that a lot of smart and curious and talented people inhabit the world, we're less special than we think we are, or our parents and teachers told us we are.
Good luck with the "hard parts" of mastering complex skills. Practice and some humility will probably pay off better over the long term than telling yourself you can "grok" everything in a ridiculously short time compared to everyone else.
In the 4 years that I've worked as a software engineer, the hardest thing I've ever done was a university course where I had to analyze binary programs with IDA Pro. I find it odd how after being 4 years in the field there are still a handful of university courses that were clearly tougher. The best programmer I know personally agrees with this assessment as he was my course mate (I'm nowhere near his skill level, and he's always considered to be the C++ expert no matter what company he applies to).
I've talked with friends - all of whom have more experience than I do given that I was in uni for 8 years - about this and I got a myriad of different responses. HFT developers seem to program actual hard things that I don't have experience in. Ethical hacking seems to be in its infancy in many companies making it possible for me to go that route (source: a friend did this and he was at a similar skill level). There's a huge difference between being a pentester for a corporate of a big HR company compared to Google's Project Zero. CRUD developers for web apps for startups seem to agree with me. I wonder if it's true for people working at a big corporate and doing CRUD, that I wouldn't know.
For as far as I've noticed, being able to do a good job is mostly contingent on motivation. When my motivation is at the level of dedicating my life towards it for whatever period of time I'm working on it, it seems I get the job done at a satisfactory to exceptional level (most of the time). This has also been true for my friends.
> Practice and some humility will probably pay off better
For the past 4 years I've pretended to be humble, because people can deal with me better. The thing is I'm not. And neither am I humble for the capabilities of many people. Many people are insanely good at anything when sufficiently motivated. The reason I'm posting what I'm posting now is because I need coaching and I want to be authentic. I've been hiding myself and it's eating at me. I get paid, and people are happy with my work, but it's making me feel soulless.
In an ideal world I'd start a company. However, understanding markets and market dynamics is insanely hard. It is as hard as actual investing and actual trading. It's not a financial risk I can afford, despite the fact that I think it suits my skills much better. Startups are a good environment, but the stress is in many cases too much.
I agree with that there are many talented/smart people.
Since you mentioned grokking Buddhism you might reflect on the Four Noble Truths, and the necessity of humbly valuing others and not striving in order to get closer to enlightenment.
> For as far as I've noticed, being able to do a good job is mostly contingent on motivation.
Motivation helps, but without understanding and skill your motivation will only get you so far. The people who perform best feel comfortable and confident doing what they know how to do. You can see that watching them work -- it seems effortless and calm. You can't fake that, and no amount of wanting to perform will make up for lack of skill and experience. For me the most thoughtful discussion of what we can call quality and effort comes from Zen And The Art Of Motorcycle Maintenance.
Good book recommedation!
Generalists can spread themselves thinly across disciplines and never hyperfocus, so again: another caveat. It depends on your situation whether you want to specialize or generalize, and this can be a case-by-case basis.
1. Self-censor to align with the opening you're interviewing for: works fine until it doesn't. Even if you manage to get in, you'd likely be a miserable guy who happens to have a good bank balance. Been there, done that.
2. Start your own thing: As you said, hard evidence is going to be the best argument to back your claims up. I'm struggling with this a bit, but bootstrapping a small software business doesn't sound financially daunting to me. Worst case, a huge time sink with zero returns. Moving to parents' basement helps.