Readit News logoReadit News
Posted by u/100011_100001 4 years ago
Tell HN: The loneliness of a pretty good developer
I'm a 10x developer and I hate it. If you consider yourself a "top" developer I would appreciate your perspective.

It didn't start this way. I became a Jr Dev at 33 years old, people consistently assumed I was more experienced than I was. I'm not sure if it was my life experience or my relentless pursuit of self-improvement but I have been continuously improving my capabilities.

Around the time I turned 38 years old I felt competent. My code started to become defect proof. The drawback was it took me an extra 20% more time to complete. The Product Owner used to say to me, "I know it will take you an extra two days to a week to complete something, but then I never have to worry about it again". So, solid code, but kind of slow in comparison.

I'm now 42 years old, my code continues to have minimal amount of defects, but I complete stories fast, and I'm not working crazy hours, just the standard 8-5. Of course I'm involved in a lot more meetings nowadays, architectural discussions, bleeding edge Proof of Concepts etc, however that has not slowed me down. It has made me faster.

I never set out to become some kind of uber developer, but in the last couple of years I have noticed a shift in behaviors around me. It started with little things. Tech Leads inviting me into meetings to express my perspective on things. Developers pinging me when I have never worked with them, because "you probably know the answer". Being asked to weigh in specific Code Reviews outside my department. Lately if I join a meeting with people I haven't talked to before they already know who I am. Even my manager has started introducing me by just saying "This is X, you've probably heard of him".

Someone run a query to see the number of git commits by user for the application group I am in, about 350 developers. A script I wrote that performs various automation tasks was number 1, I was number 2. This surprised me, and it was an event that brought some of my thoughts and feelings into focus, thus this lengthy post.

I don't think that the number of git commits actually proves anything, other than I commit, code review, and merge code frequently. I wanted a better metric to quantify my feelings of alienation. I looked at Jira stories and story points. In my direct team of 10 people, myself included, I have completed 71% of all story points in 2022, the other 9 are responsible for the other 29%. That jives with my number of git commits compared to others as well.

So what's the point of this thread? It's not to brag, if I came across that way, I apologize. The problem I'm having is it's lonely and stressful.

This feeling of loneliness got quantified when the commit number came up. The problem is people just accept whatever I say. I used to get challenged in some of my decisions, which I always appreciated since I could create better solutions. Nowadays people just accept whatever I say as the best way.

It feels like I don't have peers. I'm solely dragging my entire team and everyone else around me with me for the ride. This leads to stress, it feels that if I am not working on the "thing" it won't get completed.

I worry that by not being challenged I will become complacent.

I catch myself becoming more controlling because at this point about 80% of the code base is my code for the applications my team is responsible for. I don't think that's a good thing, at the same time what I find plainly obvious is not to others.

The worst part is I am sensing within myself this frustration that everyone else appears to move so slowly. The thought of "great, one more thing I got to fix" is coming up too frequently.

To summarize, I'm a pretty good developer. I love writing code. However I feel alone, and I'm afraid I will become conceited of my own abilities. If you can empathize with this I would appreciate your perspective. Am I the only person feeling this way? What can I do to change things?

ctvo · 4 years ago
I think you're an above average developer working at a below average company. This could be the root of all your problems. Nothing is more frustrating than working with peers you know aren't carrying their weight.

Do you want to be an engineering leader? This is what you are, regardless of your official title at your company. Engineering leaders are judged by how much better they make everyone else. You may hear the term force multiplier used. Say you are really a 10x engineer, how much more effective are you if you could improve the efficiency of 350 developers by 10%? Mentor, teach, help establish culture, make systemic changes to help your peers become more effective.

Regardless, I think you're a bad fit for your current company and its culture. And yes, many of us have worked in environments, like a startup, where we knew we were critical to success. Fail to deliver and a funding round wouldn't go through and people would lose their jobs. It's stressful, but I hope you're adequately compensated.

ChrisMarshallNY · 4 years ago
I wish you luck, and I can relate.

I worked for a famous Japanese imaging corporation for almost 27 years. The pay was meh, the corporate overhead and B. S. was damn near unbearable.

But I worked as a peer with some of the finest engineers and scientists in the world, on a daily basis, and we respected each other (but often also wanted to strangle each other).

I was seldom the smartest person in the room (and I’m smarter than the average bear). It was humbling, challenging, and exciting.

I became a manager, and hated it. I was a very good manager, but spent my nights and weekends, coding.

Since leaving that company, I went straight back to coding, and I’m not as good as I was.

I’m way better.

I don’t really care whether or not I’m better than anyone else, but I find that I can usually meet any challenges thrown my way[0].

It seems that I picked up some good habits, along the way.

These days, most folks in the industry don’t want to have anything to do with me. I’m radioactive. It only took a short time to figure out that no one wants Pops on their team. I won’t go where I’m not wanted.

I’m extremely fortunate, in that I can support myself without earning a salary. I sought out people that want to help others, and have been working with them, for free.

It’s working for me. I’m not lonely at all, and I’m pretty motivated by the work.

[0] https://littlegreenviper.com/miscellany/thats-not-what-ships...

100011_100001 · 4 years ago
The pivot I have been debating is to become a Lead Development Manager with the express purpose of enabling everyone else, removing obstacles, creating better processes etc.

My problem is that I love code much more than talking to people all day. I have been mentoring Jr Devs for a while now in an official capacity which helps.

I like the idea of "make systemic changes to help your peers become more effective". So that's something I will have to think about.

omarhaneef · 4 years ago
If you want to just code, just code.

I accept you're a gifted coder, and that you're better than your peers. Good, then do exactly that.

Being good at mentoring people is only vaguely correlated with being good at code. IMHO, the main factor that will make you good at something is caring about it, and if you don't want to talk to people you'll waste your skills.

There is someone out there who would love to talk to people, worry about their development, figure out how to best use your skills and so forth. Let them do it.

rapind · 4 years ago
For a non “Valley” perspective, your work situation sounds fine TBH. You are already the defacto dev lead (making it official could mean meetings).

Hobbies, sports, instruments, hell even a book club. Get social outside of work. Treat it the same as you’ve been treating your career (dig in and get good). You’ll find you make friends outside of work, but often at work too, as you may have hobbies in common with others at your job.

This will naturally lead to a good work balance, because you may end up wanting to clock out early to get back to your hobby. You’re in a great negotiating position to reduce your hours when that happens.

sayrer · 4 years ago
Get a job at a big company, like Google or Microsoft etc. There is always someone smarter.
naugtur · 4 years ago
I moved from a role similar to what you're describing (spent 7 years there) into a role where I'm the least senior person on the project. And I'm having a great time.

It's always possible to find people who are so much ahead of you that you'll need to put effort into just following the conversation with them. And when you do, they're your peers and you're proud to be a 0.9x developer alongside them.

manmal · 4 years ago
Maybe you can write software to help make others more efficient, by empowering them to do more by themselves. Give people superpowers they don’t have at other orgs. Things coming to mind:

- Code editor plugins (or web or mobile apps) tailored to your org‘s workflows

- Language changes in case your org is using an OSS lang

- Libraries for often-used functionality

- DSLs that let your org‘s PMs encode behavior themselves

- Small utility apps (web or mobile) that facilitate more effective communication

- Dev tools for your stack, eg if you don’t have hot reloading yet, that’s a huge enabler

- Test data generators

- You mentioned that you setup automation. Take it a level further and let other devs create scripts by preparing an environment (maybe an IDE) for that

thisisbrians · 4 years ago
Maybe consider a Staff Engineer type role at an established and well-respected firm? Still mostly IC if you can land the right role, I think, but more focused on the meta stuff that enabled the whole team like tools and automation. Would love input from others as I've not actually worked in such a role before.
twelve40 · 4 years ago
Just move to a more intense company, or internal group, or a startup. I'm not familiar with how good you are, or your company, but I can almost guarantee there is a lot of stuff out there much more intense than the current place. And you can totally remain an IC if that's what you like.
netghost · 4 years ago
Having been at times a manager and other times and IC, there are some great opportunities in each role, and it really depends on your organization.

If you haven't read it, "Staff Engineer" outlines some of the ways more experienced engineers continue to grow and provide value without becoming managers. I'd say the first half of it is worth a read to see if it sparks anything for you.

I will say that it gets lonelier as you go along either track. Reach out to peers if you have any. If not, try to reach out to folks outside of engineering.

It's a tricky path, and I wish you the best.

e40 · 4 years ago
Honestly, your impact will be greater if you become a development lead.

I know this because I've watched it happen many times, not because I'm one. I've had lead developers report to me and good ones can really have a great impact. The tooling, procedures, technical debt, etc. All will be positively impacted by someone like you.

nrmitchi · 4 years ago
This is also a common theme in a lot of "Platform Engineering" style roles (but not all of them, because it's an overloaded term). The output of your actual code is systems to empower others, and paving the "clean path". Support and education is also a very common piece of success.
ashtar · 4 years ago
From where you're coming from, I think, your next steps would be thinking "who should work on this" vs. "I'll pick this up because I can do it quickly."

If you're not enabling your team to take over your job, you're doing it wrong. And by a comment I saw elsewhere, the tendency to control things is natural, but you should resist that - it's the only way you can scale.

If your organization doesn't have that kind of individual contributor leveling, that would be a good conversation to have. Or if your team isn't big enough, maybe its time to look for a new challenge.

There will be a learning curve and a mindset shift, but it's really the only way that you truly become a force multiplier.

Soon, your commits will go down, but your reviews will go up.

Later, your reviews will go down, but your strategy/design/planning docs/conversations will go up. Your job is designing for the 1-3yr future (or more but rare) and across the organization.

phkahler · 4 years ago
Get involved in the hiring process. You should be able to screen candidates well and if the company really is full of sub-par developers (doubt it but maybe) you will bring that up a bit. If you need tips on interviewing shoot me an email (same ID at g mail) it's easy for a good engineer once you know what to look for and how.

BTW that's not isolation you're feeling. It's responsibility, respect, and frustration. You didn't ask for the first two, you earned them.

spullara · 4 years ago
Don't do it.
icedchai · 4 years ago
If you do that, you may never write another line of code again (especially in a large organization.)

I like mentorship, helping people figure stuff out, giving technical advice etc. I don't like going to zoom meetings all day, which is what "leadership" in today's modern world has become.

omegalulw · 4 years ago
> I think you're an above average developer working at a below average company.

This. I'd conjecture that this has led to OP becoming overconfident.

I also think that OP should not be a manager. If one dev is doing 70% of the work then that's either bad hiring practices or micromanagement where other team members are not trusted to deliver complex projects.

texasbigdata · 4 years ago
Re: your second paragraph, what does that have to do with OPs ability (regardless of appropriateness to the firm, his career arch, or the story) to perform as a manager. He/she might be great, normal, or terrible. How can you tell apriori from what they wrote?
umvi · 4 years ago
That's what it sounds like to me. Big fish in a little pond. If OP moves to a big pond he'll get a different perspective.
rco8786 · 4 years ago
> I think you're an above average developer working at a below average company

Nailed it

notomorrow · 4 years ago
so true. for the self pumping developer
dclowd9901 · 4 years ago
This. I always had a rule: if I wasn’t learning at a company I either need to switch teams or change companies. It means I outgrew my position. I’ve continually felt challenged as a result with a side effect of lots of types of companies and teams in my background.
unboxingelf · 4 years ago
This. The company you work for matters tremendously and it sounds like you’re ready to “level up”.

Dead Comment

tsss · 4 years ago
Or he just bangs out a ton of crappy code in the name of "pragmatism", while everyone else has to clean up after him and thus takes longer. I've seen this many times.
100011_100001 · 4 years ago
Eh, that is exactly what I don't want. Pretending I am this amazingly productive developer and my code is just trash.

I just checked. In 2021, only two defects were created against my specific code changes. If I had to home into a weakness of mine is that sometimes I solve today's problem well, but don't think extensively about how tomorrow's problem in that space might look like.

The struggle is between creating simple solutions vs over-engineering for future proofing. I'm pretty sure I'm biased towards simple solutions.

andrewmcwatters · 4 years ago
This could be the case, but we don't know, and it's also helpful to think about this from a charitable perspective.
ptr · 4 years ago
You can be fast while also writing great code.
ziddoap · 4 years ago
“If you’re the smartest person in the room, you’re in the wrong room.”

I know saying this is easier than doing it, but; seek upward movement until you no longer feel like you're the smartest person in the room.

I would also add, although it's purely personal opinion, that seeking a solution to loneliness through work is a surefire way to feel more lonely. You say you're big on self-improvement, but are you only focused on improving your work-related skills? All areas of life need attention, and it sounds like you've only been focusing on the work part of work/life balance (work/life balance is so much more than just what hours you work).

kromem · 4 years ago
Then you finally meet the smartest person you've ever met and, statistically given the quality of the room and their excellence above and beyond it, ever will meet.

And you realize that person spends their life handing out wisdom which consistently just falls on deaf ears.

It's an empty journey with an unsatisfying end even if you make it to the top.

The money's great, but if you are smart enough to be constantly walking into bigger and better rooms, you should also be smart enough to realize there's diminishing returns on personal wealth but diminishing supply on personal time.

Sometimes the best strategy in winning a game is not to play.

dmichulke · 4 years ago
Fully agree.

As an aside, you can be smartest in programming and even managing teams but you might still not be most sociable, strongest, most musical, richest, most charismatic, funniest, most attractive, <insert adjective here> person.

If the only measure you go by is IQ, you're childishly defining the game all other kids are supposed to play and then wonder why no one plays with you. That would definitely not be smart.

100011_100001 · 4 years ago
I've thought about this. I actually do not think I'm the smartest person in the room, hell two of the people in my direct team are definitely smarter than me. I think I have really good systems that allow me to consistently solve problems and write code.

On the loneliness front, I meant in the scope of working. I have four kids, I am everything BUT lonely with them.

However, I do agree that aside from work and one of my hobbies I have neglected my health, specifically I need to eat healthier, exercise more and lose some weight. I've debated working one hour less than I'm supposed to just so that I can exercise daily, but I find myself worrying that without me things will fall apart.

Logically, I know that's not true. If I died today, the company or my team would not collapse. Nevertheless I feel that if I'm supposed to be working from 8-5 (which 1 hour lunch), I need to actually be working.

prirun · 4 years ago
Being the big fish at your current job gives you some advantages. I would talk with your manager and explain that you need to work fewer hours so you can take better care of your physical health. Especially if you combine this with coaching your peers, they may not resent the fact that you are getting some perks they don't get. And if they do, well, that's not your problem. I have worked at many jobs where I received flexibility that others didn't have, and as long as you're not a dick about it, others will accept it because of your obvious value. The alternative is, you quit and then they get all the work.

Work isn't everything. If you start working on your health, it will improve your mood and outlook. My guess is, you have an introverted personality and occasional feelings of isolation are just part of it. Try to accept it rather than fix it, because you might find that if you did have peers, that would have its challenges too.

rootingforyou20 · 4 years ago
OP, don't know you but rooting for you

Re eating/getting healthier,

1) food: this guy Rip is truly a lifechanger (esp if since you're in the zone when it would be smart to look after your heart: https://mealplanner.plantstrong.com/

2) Lose weight (this approach might be appealing to your engineer'y instinct): https://www.fourmilab.ch/hackdiet/

3) Exercise:

- Warm up (DO THESE): https://www.youtube.com/watch?v=-QWyyHfARNI

- Try to get through a round of this w/ good form + then try to do 2, 3, etc: https://www.youtube.com/watch?v=XTSIqbuZC0Y&t=369s

I don't have any career advice for you, leaving is one option but consider that it would great for you to "skill-up" the people around you so when you leave it isn't like they lost their Golden-Boii, but rather bow out like a Bob Iger at Disney & leave them with a glorious future blah blah

jiggawatts · 4 years ago
> I actually do not think I'm the smartest person in the room, hell two of the people in my direct team are definitely smarter than me. I think I have really good systems that allow me to consistently solve problems and write code.

I had the exact same experience in my first job, where I was one of the least experienced developers and I wasn't even remotely the smartest one there.

However, I was working smarter than everyone else. For example, I was the only one that had adopted a "proper" IDE (IntelliJ IDEA). I was the only one using the source control the way it was supposed to be used. I was the only one using scripts to automate the gruntwork. Etc...

I could be told about a bug and the function name it was in and be done fixing it in under a minute. Literally just the "global semantic search" feature of the the IDE saved me hours of time compared to everyone else. Incremental builds saved me another hour. Automated tests running in the background eliminated an hour of manual testing.

Hilariously, the reason I leaned on the tools so heavily was that I felt like I wasn't good enough to navigate the codebase without the assistance of an IDE.

The end result was that I could run circles around everyone else. Like you, I compared the checkins per week and I was #1 by far. Literally more fixes per unit time than everyone else combined.

This should be a lesson for everyone here who thinks that they are smart, or experienced, or "senior":

- Your typing speed is not your velocity. It doesn't matter how good you are with VI or Emacs if you take hours to complete a task that a purpose-built IDE lets a junior developer finish in a minute.

- Tooling outside of the editor matters. Incremental builds matter. Automated tests matter. Telemetry from production matters.

- Focusing on features while there are open bugs is a guaranteed catastrophe. You will have to fix the bugs sooner or later anyway. You can fix them right now, or you'll have to compensate for them while adding features... and then fix them later, after having wasted your own time.

Etc...

somenewaccount1 · 4 years ago
Sounds like you just need to redefine what "working" for the company is.

If your exhausting yourself at a desk for 8 hours x5 until complete burn out...well...then you go from writing 80% to 0%. How does that help the company? It really doesn't, and your overall average drops real fast (even though your not there).

Others maybe already get this (or live like it anyway) and spend less time typing code. Taking care of yourself so you can continue to contribute 4-5x of others is far more beneficial for the company in the long run.

Think about the "10x" companies - FANNG if you will - they have bicycles for people to go between campusus's, entire gyms, foosball, etc, etc. They seem like insane perks to the outside world, but it's what give balance to the 10x'ers whom work there - and they do it on company time.

Good luck!

wreath · 4 years ago
> I've debated working one hour less than I'm supposed to just so that I can exercise daily, but I find myself worrying that without me things will fall apart.

So be it. This may be harmful to your team/company in the short term but it will make it clear that there is a gap in output and productivity within the team that must be addressed. Go lift heavy weights (im talking about iron).

smsm42 · 4 years ago
You may want to really go to a gym (meaning broadly, any type of physical activity, if it's not a gym but running or biking or anything else for you, it's fine) more. It's amazing how getting regular exercise (and I don't mean just walking around the block, something that really makes you sweat and pushes you to your limits) has positive influence on your mental health - yes, including the work stuff. It's hard to believe until you really experience it, but I can tell you from my experience, if you feel frustrated after a bad work day, there's nothing like putting your big brain on neutral for a while and do some physical exercise, and then you'd be surprised how much better you feel. Do take that hour - it will pay for itself, you'd get much more back in better productivity and better mental (and physical, obviously) health.
ziddoap · 4 years ago
>two of the people in my direct team are definitely smarter than me

How often are you actively learning from and engaging with them on exciting new tech (or the systems you've designed and how they can be further improved, etc.), compared to water-cooler talk?

eyelidlessness · 4 years ago
> I find myself worrying that without me things will fall apart.

> Logically, I know that's not true. If I died today, the company or my team would not collapse.

Even before I got to the next sentence I recognized this from my own experience. You’re experiencing acute burnout.

It’s hard to disconnect from that, but I can tell you (again from experience) that you need to find a way to do that.

My advice is to set yourself a goal, to become a .1x developer for a clearly defined amount of time. A month is a great minimum. Go travel or even just find a fishing hole or something that feels relaxing and detached from work and just… don’t be at work.

Either you come back recharged and reassured that your team is as capable as your rational-voice mind is telling you, or you come back to flames and realize you deserve a better role that supports you.

Regardless, you come back with some time away to rest and think about what you want for your life, including whatever is next in your career.

roguas · 4 years ago
Listen, if you are so good at your job you stand in front of 2 choices. Downgrade time spent and enjoy personal life more or upgrade your title/team/company.

If you are working salaried job and not earning 3x as your peer, yet you worry things will fall apart? Something is not right. Most likely you need to ease a bit on work, see nothing will fall apart or if it does ask for huge raise.

aiisjustanif · 4 years ago
> Nevertheless I feel that if I'm supposed to be working from 8-5 (which 1 hour lunch), I need to actually be working. Maybe it’s my young mentality but, you gotta change this opinion first. If you did enough work in a week to be 40 hours worth then go take time for yourself. Results are more important than hours, give back some hours to yourself and focus on your health and exercise. Go join a fitness class, bike group, running club, something and make friends.
EFreethought · 4 years ago
What are these "really good systems that allow me to consistently solve problems and write code"?

I assume you are referring to some sort of productivity methodology like GTD.

rexpop · 4 years ago
> I have four kids, I am everything BUT lonely with them.

This is inadequate. Adults need "love" and companionship from adults in our lives. The love of children is inadequate; we must also have strong ties with buddies, pals, compatriots, and colleagues for mental health.

Children can never fully deplete adult loneliness.

inglor_cz · 4 years ago
A tip from me... Try intermittent fasting and spend the 1 hour allotted for lunch on a brisk walk or a short (30-40 minutes) exercise if you have a nearby gym.

I think you will feel better. I certainly do, on a similar regime.

hoten · 4 years ago
I like to say I aim to be the second dumbest person in any room.
kilroy123 · 4 years ago
Couldn't agree more. You never want to be the dumbest one in the room. Stressful and dangerous position to find oneself in.
amelius · 4 years ago
And Feynman was in the wrong room his entire life.
mepiethree · 4 years ago
Meh. 16 people from work came to my wedding (including my best man). You can be social at work without it ruining your life
ziddoap · 4 years ago
This doesn't run counter to what I said, really.

I believe that if you are already feeling lonely, despite working somewhere for X number of years, the solution is very likely not going to be found at that same place of work.

If you have friends at work and they come to your wedding, congratulations, my thoughts on the situation are not suitable for your situation and you are more than welcome to (and should) ignore it.

xpe · 4 years ago
> “If you’re the smartest person in the room, you’re in the wrong room.”

> I know saying this is easier than doing it, but; seek upward movement until you no longer feel like you're the smartest person in the room.

Since there are many dimensions of intelligence, the above is very underspecified.

Once you disabuse yourself of the fallacy that there is a single dimension of intelligence, it opens up a whole new world of possible mindsets. This allows you to rethink your goals and even your metrics for fulfillment. Perhaps it is more rewarding to think of how you complement others, for example, in terms of capabilities, personality types, and life experience.

User23 · 4 years ago
Spoken like a true midwit. Having had the extreme privilege of actually working with some really exceptionally smart people I can assure you that intelligence is a general trait without any significant extradimensionality. The best possible outcome for any organization that has such a person is not the crab bucket ideology you propose, but rather celebrating that exceptional person and benefiting from that person.

Deleted Comment

amelius · 4 years ago
> seek upward movement until you no longer feel like you're the smartest person in the room.

What do you mean by "upward"? If it's the classical meaning: you're not guaranteed to find smarter people higher in the organization.

ziddoap · 4 years ago
Of course it's not a guarantee, I didn't intend my message to make it seem like it was. I think upward movement has a higher chance than downward movement, though. And considering staying where OP is at is causing issues, I said upward.

I could have said "seek movement until you no longer feel like you're the smartest person in the room", I guess.

Deleted Comment

throwaway012299 · 4 years ago
> “If you’re the smartest person in the room, you’re in the wrong room.”

Easier said than done. I found smarter people only in few teams in FAANGs, but never in other companies.

Unfortunately there are many other aspects that we need to balance out in life other than being in the right room.

ziddoap · 4 years ago
>Easier said than done.

My next line literally says "I know saying this is easier than doing it,"

>Unfortunately there are many other aspects that we need to balance out in life other than being in the right room.

And then I finish with "work/life balance is so much more than just what hours you work"

So... yes. I agree?

mooreds · 4 years ago
> I worry that by not being challenged I will become complacent.

Fair worry.

> What can I do to change things?

You should switch jobs.

I've been the top technical person at a couple of companies (not the size of your company, however). It can be exhilarating to be "the person". You get a lot of respect and autonomy. But it can be easy to fall into the curse of the expert beginner: https://daedtech.com/how-developers-stop-learning-rise-of-th...

While you can mitigate this to some extent by participating in groups (virtual and physical) for other great developers, the easiest way to handle this issue is to switch jobs.

So, I'd suggest you start interviewing. Either you'll find a better place, or you'll discover advantages of your current situation.

cableshaft · 4 years ago
I concur, switch jobs. It may just be that you've become the big fish in a small pond (or even a large pond, but just at that company). No better way to make you realize what all you don't know except by switching jobs.

I've been "the goto guy" at a few places, usually just ended up that way over time, and when I switched jobs, suddenly it felt like I didn't know anything, or at least had a lot of catching up to do.

Like I was a SME at my previous company, that got pulled into a bunch of meetings, and was often brought up and thanked in multiple town hall meetings for various projects I worked on.

At my new job, it was obvious that everyone was using technology and architecture that I was never exposed to and I had a lot to catch up on, and I still am. I am definitely not a SME here. Although I have been on one project just long enough that I will start helping onboard and overseeing some junior engineers soon, it sounds like.

Also, I'm smart and can pick up things quickly, but I would never consider myself a 10x engineer.

megous · 4 years ago
Will the "getting busy/challenged learning new things at new job" resolve the loneliness feeling though?
hellisothers · 4 years ago
+1. I had a similar crisis when I was a “big fish in a smallish company”, I wasn’t learning, I wasn’t being stretched and felt like I was going to get stuck in this eddy. Move to a bigger company, be challenged again.
biomcgary · 4 years ago
I mostly agree, but I don't think the company necessarily has to be bigger, just more competent and ambitious(?).
QuercusMax · 4 years ago
Same with me. I was the most senior dev still writing code ~every day, and there was literally no place to grow. Moved to Google and learned a ton, now I'm one of a number of big fishes in my org, and I also feel like I can potentially move on more easily if I want to.
xpe · 4 years ago
Also: don't rule out an intra-organization move.
phphphphp · 4 years ago
I’ve worked with people who could have written this post with the stats and how they consider themselves, but they were awful to work with. People didn’t challenge them because it was exhausting, because they knew best, despite their constant churning out of garbage code that the business didn’t have the guts to address.

That’s not to say you’re bad or your code is bad, but it’s definitely worth considering whether the way you’re measuring yourself is a true reflection of your value: have you talked to your co-workers about what it’s like to work with you? What value you provide to them? How you can contribute to their careers, their work? The greatest value you can deliver to a business is rarely code: if you can improve every other developer by 1x, the business will be much better off than you being on an island all by yourself.

My measure of myself always starts with whether or not people enjoy working with me, whether I’m providing value to the people around me: I could write 10x as much code as I do now, but I don’t believe it would have better results for the company overall.

MauranKilom · 4 years ago
> People didn’t challenge them because it was exhausting, because they knew best, despite their constant churning out of garbage code that the business didn’t have the guts to address.

That doesn't square with how people are going out of their way to query OP though, no? If people drag you into meetings tangential to your work, it seems unlikely that they hate working with you...

phphphphp · 4 years ago
Difficult to say without knowing the OP personally, but in my experience, all of this can square.

There’s complex dynamics at play that are a product of the genius developer mythology: someone produces a lot of code, the system becomes an extension of that person, everyone becomes dependent upon that person regardless of whether the person is good or bad, enjoyable to work with or not, because they’re the genius system-whisperer.

Earlier this year I spent some time at a company that has an incomprehensible system that is deeply problematic and painful to work on — so much so, they brought on dozens of developers to try and speed up the rate of delivery (I was one of them) — but the person who built it (and is most productive in it) has been elevated into a position where he now owns the entire technical implementation for the company, and is responsible for designing the solution to the nightmare he created, despite clearly demonstrating he has no business doing so: he’s simultaneously a linchpin and incompetent.

There’s probably some version of the Peter Principle that applies to software engineering: a software engineer’s output will rise to the level where it’s a burden.

gray_50 · 4 years ago
I agree with this. Worked with a guy who sounds exactly like OP. The official perception was that he was a smart 10x engineer. But off the record people actually hated working with him. He was a massive control freak and the only reason we bought anything up with him was so he didn't have a cry about it later.

Sometimes the "10x engineer" is just the one that's loudest and most persistent. Doesn't mean they're good. Just means no one else can be fucked dealing with them.

Andrew_nenakhov · 4 years ago
From my experience, a person claiming to be a 10x developer probably isn't one. All real performers I knew were pretty humble people.
jslaby · 4 years ago
Like someone saying they're an alpha male... imo most devs, junior or not would love to tackle problems without the oversight of a lead. Maybe his code reviews are so heavy handed that devs would rather get his okay before rather than getting scorched after.
gamblor956 · 4 years ago
To second that, the best programmers I know are quite upfront about how much they don't know.

This can have the paradoxical effect of people relying on them less in situations where they should, because they think the 10x doesn't know anything, and instead they turn to the braggart 1/10x programmer who claims he knows everything. (Not meaning the OP on this; I just know a guy IRL who is exactly this.)

xpe · 4 years ago
I wonder if this is based on a statistical summary over your experience. What does your confusion matrix [1] look like?

Also: (1) It is easy to say "from my experience" without sampling from it representatively. (2) It can be difficult, in general, to gather life experience that is balanced across all four elements of the confusion matrix. (This is a general statement that includes survivorship bias.)

[1]: https://en.wikipedia.org/wiki/Confusion_matrix

seattle_spring · 4 years ago
That is spot on to what I was thinking. I have encountered a few of these guys in my career and ohhhh man do they ever think they're the absolute best.
aprinsen · 4 years ago
The situation OP described is really not that unbelievable to me. I've met one or two developers who really were "the best in the room" at a smaller company and I can imagine them writing something like this. Nobody hated them. The 70/30 balance seems relatively lopsided though.
soneca · 4 years ago
I am not a top developer or even close to it (I don't or want to have this trait of "relentless pursuit of self-improvement"), but I have worked with a couple.

It seems to me that being controlling is part of the problem. When I worked with a top developer, every and each code that I wrote they would have written it faster, more elegantly, more maintainable, and more bug-proof. But when they reviewed my PR, they would approve it if it was good enough. They would point out possible improvements, but once they were done, they would approve and go on. If they used their skill level as the bar to accepting other people's code, they would be doing 80% of the work and writing 80% of the code. In that case, I would be very comfortable just doing much less work than I could for some time until eventually I would get bored and leave.

Still, this top developer eventually changed areas completely (in the same company). From web development, which they mastered to cyber security, where they could start again their relentless pursuit for self-improvement, working with people that knew more than them.

That would be my suggestion. Just change areas, inside software development (inside the same company, if you like there, would be easier, as you already have the respect from people and they know your potential). Go learn something that you are not a top developer. But this is just me, a very regular developer, looking from outside what I saw people more similar to you doing.

alisonatwork · 4 years ago
This is an underrated answer.

When your colleagues start treating you as the "go-to guy", I think it's often holding back their own development. Why should they try harder when they know your code review will catch everything they missed? Why bother volunteering for challenging tasks when they know you will do it faster?

Often when you are put in the position of being the "go-to guy" at a company, you start to imagine that the company will fall apart without you. But it turns out that when you leave... the company just keeps going. And sometimes those developers you worked with that you might have seen as mediocre or unmotivated now grasp the opportunity to step up and grow into something better.

I think if you feel like all the pressure is on your shoulders and the company would fail without you, you have a bad relationship with your job. Your work is where you go to get paid. The end. Unless you are literally being paid 10x what your colleagues are being paid, from the company's perspective you are not a 10x developer. The truth is, in most cases, the company doesn't care all that much whether they have in you a 1.5x developer or a 10x developer. They value you exactly as much as they're paying you, no more. So don't feel irreplaceable. The world will keep on spinning long after you are gone.

xpe · 4 years ago
> They value you exactly as much as they're paying you, no more.

Define "they".

It is sometimes useful to think of an organization as one actor, but this simplification can break down. For example, a great developer may get noticed and recognized by her manager, but said manager may have a difficult time making the case to bump her pay due to organizational dynamics and policies.

My point: different parts of the organization may value you differently, each with different abilities to 'compensate' you, whether it be pay, benefits, project flexibility, work-life balance, skunk works, or the option to not be anywhere near Chris.

(No offense to people named Chris intended. Unless, well, you are that Chris.)

xpe · 4 years ago
> Unless you are literally being paid 10x what your colleagues are being paid, from the company's perspective you are not a 10x developer.

First, the usual accepted definition of a 10x developer is not about pay; it is about value added. Second, it is well-known that market pay is not necessarily linearly related to value added.

xpe · 4 years ago
> Your work is where you go to get paid. The end.

As I interpret this statement, it seems too narrow. It is one value judgment of how one person views work. It is not universal. I don't think this view is widely held in the software world, at least in the United States.

dilyevsky · 4 years ago
This. “The cemeteries of the world are full of indispensable men.”
prlambert · 4 years ago
You're at the wrong company. I've worked at a startup, at Twitter, and at Google and each time there was notable "raising of the bar" in the talent I was around. I know there's a lot of Google hate on HN, and it's such a big company it is true not every team is mind blowing, but... I've been there 5 years and I still have serious imposter syndrome and am constantly amazed by my colleagues. I get to work with some crazy smart and productive people. The suggestion isn't "go work for Google" (but maybe you should) but find a group of people that push you and amaze you and make you want to improve. They definitely are out there.
svachalek · 4 years ago
I think it's totally this. In my experience there is variance in how effective the top percentile of developers are at their work, but not nearly as great as the variance at the bottom. There are MANY teams out there where even the best developer on the team could hardly answer any question on leetcode, and some where everyone on the team could rip through every question like a bag of chips. People who call themselves 10X developers have generally not spent much time on the latter kind of team.
turtlebits · 4 years ago
Agreed. If there is a lack of engineering culture, it's easy to feel like you're the only one pushing the envelope, and feel like you're the most productive. I've definitely experienced that, working for large enterprise and/or financial companies.
zmxz · 4 years ago
IT is full of impostors. You're surrounded by them. You like writing code and solving problems. Your coworkers want to get by. Many people working in IT are like that, that's just how it is - it's a field that pays well and it's hard to catch an impostor. Entry barrier is easy.

However, why do you want peers? Why don't you make the most out of the situation? If you're pulling such weight, you're worth a nice sum of money. Use it, create stable life, start something as a side-gig, OSS project or anything that can attract likely-minded individuals you'd like to spend your time with.

The situation you're in is not grim, it's the opposite. You're the one who gives praise, not the one who gets it. You grant approval, you don't receive it. You're the one who is relied upon, and you yourself don't have a "safety net". It's not bad, it's good.

The hard part is realizing how old we are and what our roles became with the passing of time.

somenewaccount1 · 4 years ago
- Become a serious mentor. Not just in passing code review, but actually spend time teaching.

- Try documenting your processes and thinking to get to the right code answer. Like a company coding manual. This way it scales your knowledge rather than being stuck as the 'doer'.

- Consider taking on different challenges, like management, either at your company or another company.

- Reflect on what it would be like to really be in a room with other 10x developers - you will all think you have the right answer which is different from each other. Does that really sound like fun to work through on the daily? It was fun when you weren't so sure you were right, it gets less fun the more sure you are.

- Most round B/C startups have ~50 developers. If you have 350, you're in a massive machine. You may think your 10x everywhere, but it's possible your only 10x in your locality, where you know the entire code base. It may simply be time for new challenges at a new company.

- Ask if you can start writing for some open source project you like (new or existing) as "developer relations" for the company in some way. Yes, you will need to reduce your in house tickets - but it will keep you happy and working and contributing and still probably doing 50% of the work. And the company gets other benefits from it.

- Along the same lines, you can start writing technical articles to publish as dev relations/marketing. Theres a lot of value in those seo posts for a lot of companies.

Theres like a million ways to go with this, but hopefully these ideas help a bit. Best of luck and I hope you find some meaningful company to hang out with.

cushychicken · 4 years ago
Being a mentor is fucking awesome.

I'm a great fucking electrical engineer, but there's no project I've enjoyed like watching the junior people I work with start to apply what I've taught them.

They're now more valuable, and so is the company, because we can do more, better, and faster.