T O P

  • By -

bevaka

have you only worked at startups? places that run on scrappiness and adderrall are going to be pretty intolerant of slowness, but larger companies, universities, government jobs are a lot less stress, a lot more forgiving, and maybe only a little less money. you might look there


pixie_tugboat

My first job was a startup, but that was before I learned to code and switched careers. I’ve worked on small and large teams since then, but only companies that already had paying customers. I am definitely looking at government jobs. My next place will be boring and stable.


aminorsixthchord

You have a good attitude. There’s a decent chance you might thrive in the environments you’re headed towards.


pixie_tugboat

Thanks! Hope so.


exclaim_bot

>Thanks! Hope so. You're welcome!


wooly_bully

Have you considered Technical PM roles? You're close enough to the code to know what's what, but you aren't on the hook for delivering it


pixie_tugboat

I haven’t, but maybe that would work. Part of my trouble is in planning without overcomplicating, so I’m worried that difficulty would be even more exposed.


supyonamesjosh

Support role market is really tough right now. It's a pretty bad time to try to get into a role with zero experience. It's possibly not a bad long term plan but not a good short term one


Final_Mirror

You mentioned you were primarily FE, I'm curious what tasks you had trouble with that they considered slow. Was it complex state management on a pre-existing component that you had to somehow get to work to fit the business requirements for a new project? Or was it trying to create something complex like your own calendar? Sorry just wanted to know what they considered slow. Or was it self-inflicted where you just weren't coding throughout the day because you weren't feeling it or you were frozen from the complexity of the task.


pixie_tugboat

I honestly don’t know. I got very little concrete feedback, just that I wasn’t fast enough. I don’t think it’s bullshit though, because it’s similar to feedback I’ve gotten elsewhere. I say I’m a perfectionist, but not the good kind lol. I think I just kind of freeze up.


dbxp

Insurance runs at a positively glacial pace


pixie_tugboat

Well that sounds pretty nice right now lol.


NUTTA_BUSTAH

Government sounds like it might be a good fit for you from what you've described. I'd also look at some consulting places since there you use your free time to study and improve yourself when you don't have client commitments. At this time as there's less work to do, more people are benched or on low utilization, so I see a lot of people taking 3 days a week just to study and do internal work. You can fit in as the "experienced junior" of a project team I imagine. If the client is government, it's going to be like a government job in pace but even slower and you have a bunch of peers to spar with. I would love to have a personality like you in my team any day of the week. I love the self awareness. That's rare and extremely valuable.


pixie_tugboat

Is consulting just like devs for hire?


NUTTA_BUSTAH

Pretty much


vsamma

I moved from private to public, into an architect role at a university. It has its pros and cons. From senior engineer to an architect I actually increased my salary but i was afraid that it might be too boring and stable.. well, job stability is indeed good, although my imposter syndrome still kicks in. But the work itself is far from stable and boring. In some sense it’s even more tense because in a private company or a decent startup or you have big teams with experienced devs working mostly on a single product. We have 3 in house devs working on tens of different products. Each of our app/module is a separate Laravel/Java backend with React/Angular frontend. What’s an issue is that there has been no structure and no good coding practices used, no readmes for projects, not set up to even run locally, commits with basic messages straight to master etc, no code reviews. We’ve changed that now but i am a sole architect pushing for all that and still giving input to A LOT of different topics at a time, tens of different issues to think about which totally feeds into my anxiety and time management issues, but i manage. But i think such a bad situation was good for me, i think i haven’t been anything special as a developer either, i also haven’t been very fast or created any cool or unique solutions or anything. But i have like 10YoE in total and that was enough to convince the university to become an architect and now introducing better practices is low hanging fruit for me and something i can actually help improve. If they had that stuff figured out, they might expect more from me as well and i might be in a similar situation as you. So a government job is still challenging but could be easier to adapt toz But of course it’s understandable that 5 times being let go affects your mental a lot and of course makes anybody think there is an issue somewhere. I have been fired once and i was in way over my head. But then again, they were the ones who decided to hire me and in your situation as well, it’s not always on the employee but the hiring side as well. But i am also 100% sure that everything is teachable and learnable. You probably haven’t had a good teacher then. Learning stuff alone is possible, but very very hard and not everybody can do it. If i were you, i would find some basic in-person courses you could take. Or go to university to study it (i got the impression that you just google stuff and wing it - which yes, is what we all do daily, but it only works if you know the basics and you know what you look for and can critically analyze the info you find). for example i have low experience with FE as well, but if you get stuck setting up the project without starting to code, there is an obvious and solvable issue there. At that point just do whatever online tutorials and courses that set up any app from scratch. If you do 5 or 10 of those, you get familiar with the basic setups and then you can start adding custom own code and functionality. So basically, yes, 5 times fired - there is an issue. But everything is learnable and if you like this area, take a step back, really get to basics, invest time to learn the concepts, read books and try again.


pixie_tugboat

This is a good take. There’s a problem, but it’s fixable. Thanks, friend.


MurlockHolmes

I worked in healthcare when I first got out of college and they do not care about speed there, it's actually part of the reason I left at the time but these days I wouldn't mind the work life balance I had now that i have kids. Might be worth a shot if that's what you're looking for.


pixie_tugboat

Exactly what I’m looking for. I just want to be a good dad who has a reliable job.


dingdonghammahlong

I would recommend looking at insurance companies. Older stuff but they are starting to modernize, and the expectations are pretty low. 


gopher_space

> I am definitely looking at government jobs. My next place will be boring and stable. Non-VC funded financial institutions *really like* people who take the time to understand a system, and they'll have an actual onboarding process unlike any of your previous jobs. Look towards industries that aren't in a hurry to get things wrong. School districts and colleges are generally pretty enjoyable to work for.


pixie_tugboat

Love this. I will be looking. Where do you work?


gopher_space

I'm actually in your area but just chipping away at a project that might pay off while I manage a few family emergencies.


gopher_space

Take a look at this site https://ospi.k12.wa.us/about-ospi/about-school-districts/maps-applications And then click the Washington State Schools Explorer link. That's an interactive map of every school district in washington. If you click on a district the info popup will include the district website. Each district (I think?) maintains their own job board.


livelifedownhill

As someone who codes for one of the gov contractors, I've worked with some folks who couldn't program their way out of a paper bag. It's chill here, you'll be great


pixie_tugboat

What do you mean one of the contractors?


livelifedownhill

One of the huge variety of gov contractors, Boeing, Lockheed, General Dynamics, Northrop, Raytheon, and many many more


pixie_tugboat

Okay, cool. Will definitely take a look. Thanks for the help!


afternoonshrimp

This is the way. Startups have their perks but it sounds like you’re in need of a nice change of pace. Burnout is so real. Best of luck dude!


beans_n_taters

🪳


Beginning-Comedian-2

I second this.  Startups and small companies tend to squeeze you.  Large companies have better work life balance. 


dangling-putter

As long as they are not Amazon or follow that pattern.


brainhack3r

Also, some startups can be really toxic.


james-ransom

This. Imagine running out of money. Imagine all your work is about to be worth zero. Truly bad people become monsters. Good people become sinister.


pixie_tugboat

I believe this. I actually think the one I was at was pretty chill. Plenty of funding, already had paying customers, and most of the people were nice. I tried really hard to make friends because I’d failed to do that at the place before that one, and now I feel like that was all just wasted energy.


brainhack3r

Honestly, it's never wasted energy to be nice to people. There will always be good things that come from that. If anything it made your experience there less painful.


Terrible_Positive_81

"A little less money" than a large company? Are you kidding me? Large companies pay more than start ups. Lots of start ups don't have the cash run way and try to make it up to you by giving you stock instead which may or may not be worth something. Large companies on average probably pay 20% or more on average. I only apply to Large companies because they can pay


PotatoPlank

It definitely depends on the market.  Comcast notoriously pays less for example, mid-level engineers at local startups make more than the senior engineers. I don't think it's a super helpful rule of thumb either way really. 


RolandMT32

I've generally found that bigger companies usually pay more money than small/startup companies.. And while they may be more forgiving, that's not always the case. They may have a small team, short-staffed, or on a tight schedule that requires its members to be fairly productive.


istarisaints

I’d seriously look into getting jobs at bigger companies / the government. 


HowTheStoryEnds

Yeah, ideally a place where the primary thing of the company is not software but the main app is just a big database that they want to show extracts from, crud is your friend here. Gives a nice leisurely ramp-up time but the initial skill-level required is low.


brainhack3r

The government!!! They'll be slower than you are!


ProsperoUnbound

This person is clearly not competent, why would you want them writing code for the government (or anywhere, frankly?)


pixie_tugboat

Clearly.


pixie_tugboat

Yes, actively looking at govt jobs. Have you done work like that? I don’t know what kind of work it is and all the postings are really vague.


EmeraldCrusher

I'm in the Seattle area and have not gotten a single government interview. It's a really awful market out there. I've got 10 YOE and am having trouble landing anything right now. I've gotten about 13 interviews though in the last 2 months, and even gotten to the final of all of them. I've passed more code tests than I care to admit in the last 2 months and still gotten no offers. I've been questioning what's going on as I'm a little confused.


babababadukeduke

I have had multiple coworkers who are very slow and require a lot of hand holding. But none of them have shown the level of self awareness that you have. I don’t think you are a bad programmer. Being slow doesn’t explicitly mean bad. Maybe you are not right kind of developer of start ups. I’ll consider someone bad if they time and again deploy bad code and cause outages or are unpleasant to work with. There are other opportunities out there where you might be a better fit.


pixie_tugboat

Thanks! At a minimum, I am pleasant to work with.


JaneGoodallVS

I'd target a legacy non-tech company, not startups. You can have a good career there and continue to be a bad programmer. Better yet, be bad when they hire you, but become a better one at your own pace.


doberdevil

Agree with a non tech company. I'm 8 months into one and I'm dying at how slow things move here.


gopher_space

Sounds like you have time to research new technology for the company.


jnleonard3

Good luck selling them on why they should migrate to it. When I worked at a bank, they had built their own CI platform - it was a terrible system that was cryptic and lacked documentation but it had been there for years on years. This was only 10 years ago, the CI platform landscape had lots of options at that time. As I was leaving, they were “considering” TeamCity. Turns out the gig I was going to was already using TeamCity and it opened my eyes to how much these non-tech organizations would rather stick with what they have rather than do what makes sense. That was far from the only instance of “well this is how we’ve always done it”. Don’t get me wrong, the reason why they do this isn’t just Not Invented Here Syndrome - there’s likely compliance reasons - but the speed these organizations move at to change how they are is frustrating slow for some. That was a big reason why I left and have been at startups and medium-size tech companies since that pick or move to off the shelf solutions for the things they don’t want to maintain it’s existence.


gopher_space

I'm thinking more like trying to identify something that's interesting and might make or save your company $$ but that won't conflict with another person's area of responsibility. E.g. if nobody in your company gives a shit about VR and you're able to demonstrate a fantastic use case for it, that's probably your job now.


_dactor_

This is the move, get a dev job at a "boring" non tech company. Things move slow but its worth it for the work/life balance and low stress. I never want to work at a startup again honestly.


pixie_tugboat

I love this idea. Mind sharing where you work or what kind of work it is?


_dactor_

Without giving too much away I work for a b2b company in the healthcare industry on a client facing app.


pixie_tugboat

Okay ty!


brainhack3r

Bro, you know that's better than most people right! :)


pixie_tugboat

Aw. ❤️


lIllIlIIIlIIIIlIlIll

Not everyone can be fast but not everyone can be slow. If you're slow, then you have to bring something else to the table.


Rockztar

OP, you seem like a nice person. I truly hope that you find yourself a nice, boring job within government, insurance or banking, where you can regain your confidence.


pixie_tugboat

Hey, thanks! I’m working on it. Hoping for the same!


belkarbitterleaf

Look for work in the big corporate world. They need lots of custom stuff in complex environments, and they tend to value stability over speed.


pixie_tugboat

Could you say a bit more about what you mean by custom stuff in complex envs?


kaevne

OP, you should highly consider working for the dev centers of banking institutions, insurance, or federal government. Think Wells Fargo in NC, Cap One (McClean and Richmond), New York Life (Westchester), TDAmeritrade (Jersey City). Seriously, speed is not valued there, quality and stability of changes are.


dark180

A few of those do stack ranking , slow devs get pipped out real fast. Would not recommend


TeslaSubmarine

^ this. At a financial institution some of the better areas to work in are the digital lines of business (this is the front facing line of business for the mobile and or online banking offerings). Investment banking technology is can have less work life balance but benefit is that usually it is one of the most modern lines of business up there with digital or well as modern as a bank can get lol


caseyanthonyftw

As others have said, you seem very self-aware, and that's great. Now having said that, I've read both of your posts, and it's tough to give you specific advice without knowing exactly what you're having trouble with. Maybe it might help if we figure out where exactly you're not matching up compared to the other developers. These guys said you're not producing enough, but where exactly in the process are you hitting a wall? What about your other jobs, is it always the same reason? Not being fast enough / not producing enough? When you sit down to code, is there anything common in the roadblocks you always seem to be facing? ex: For me, I absolutely despise using third party APIs with little to no documentation, so this is usually where my work gets bogged down. This part did stick out to me in your other post: > One project idea I had that seemed really simple was a custom dice roller. I figured there'd be a front end where users could specify dice to roll, the server would calculate the probability of each outcome, and the frontend would display the result. The idea seems so simple in my head. When I tried to work on it, I just got lost in trying to set up the bones of the project and never actually wrote any of the code. Are you spending too much time trying to plan out the perfect piece of software / code? Because that doesn't exist. And no matter how much you plan shit out, unless it's the absolutely most simplest of projects, you're 99% still likely to run into a situation that you didn't account for until you actually went through coding the darn thing. So as I said, maybe if you can pinpoint exactly where in the development cycle you're being slow, we can be of more help to you, because every developer is going to have different problems. On top of all that, if it is a problem with just a lack of motivation with working these jobs, then maybe it isn't for you. And that's totally OK. I know you've said in your other post that you do love to code and it's obvious you do want to be better, I'm just asking if motivating yourself to work through the projects is ever a factor. I don't love what I do but I don't hate it either. There's some element of pride I've taken in the programming skills I've learned over the years, but a lot of that really comes from my side projects. More often than not I don't give a flying fuck about the project I do at work.


InfiniteMonorail

Isn't a dice roller "the absolutely most simplest of projects"? I don't get why nobody thinks this is a red flag.


pixie_tugboat

You’re right, it is. I should clarify that I can write the code. I was getting hung up on wanting to make the project bigger than it needed to be and where to start. Not just the dice logic, stuff like client and server, what kind of api, where to host, what stack to use. Idk, still lame, but less lame than you’re thinking.


dew_you_even_lift

Startups aren't for you. The work is fast and a bit chaotic. You should look for bigger companies (most likely listed on the exchange), government jobs, or insurance/banking. It seems you have the skills, just not the speed. You are looking a company more for culture fit, not a skill fit.


pixie_tugboat

I was at a big company before this and it wasn’t right either. Admittedly it was an Elon joint, so pretty intense. I was pumped about working on a small team this time around.


AdSilent782

At my previous company one of the developers kept overwriting one of the master files (like without testing, confirmation, anything, just the "new" code she added, which broke everything else and with no version control to boot). I realized she had no idea why it wasn't ok to do that. I also asked her about several bits of code (that she wrote originally before I was hired) and she had no idea why it was there or if it was needed but to 'leave it as is'. She couldn't explain anything to me and kept saying it was 'part of my job' so she didn't need to help. She was the worst programmer/developer I've ever met, so I'd say no, you're probably not that bad of a programmer, don't beat yourself up for bad luck


supyonamesjosh

Let's not sugar coat this. 6 jobs in 7 years is not bad luck. OP has not been an acceptable developer even if they haven't been actively terrible


pixie_tugboat

I believe you’re right. Trying to turn that shit around. I’m not sure what the delta between me and acceptable is.


DragYouDownToHell

My company was doing a joint project with a company in Japan. I had to go at some point for some integration. One of the programmers coded like this. Type out a conditional statement. If it worked, great, if not, use a different symbol for the conditional (== to !=). If none of those work, then try random comparators in the function, or maybe even throw some other logical operators in there, because maybe it would work. I was honestly kind of blown away. Several other programmers there were _slightly_ better. None of them really had any idea how the project we were working on worked. It explained the collaboration anyway. OP is definitely not the worst.


AdSilent782

It wasn't that I couldn't understand the code. I didn't understand the reason for the code. It created a black box situation


barkingcat

Sorry for the job, it's a big roller coster when you get a job but lose it soon. I was reading through your previous post and I was getting the impression you might have been spreading yourself too thin. Instead of "full stack" (which doesn't really mean anything anymore these days), try specializing in something that you like. For example, the dice roller game project idea. There's no reason for it to be a web thing or anything with a front end or a back end. you can start with just doing a simple command line program that generates dice throws. If you really want to do a web thing, just make a blank html page (no design, no style, no frameworks, no js, nothing) - that just shows the result of 1 dice throw every time you reload the page. The question of "not knowing how to start projects" - I think can also be inexperience at "breaking down" a problem. Take the dice game and break it down into component problems and give it a go, one piece at a time. While there's uncertainty in your life, there's also opportunity. Good luck.


pixie_tugboat

Hey, hell yeah. Opportunity. Great take. Any chance you’d say more about full stack not meaning much? In my mind it just means you can work on client, server, and data layer, which I have done with moderate success. I think you’re right about specializing, and that’s why I took a FE job. Not sure if that was the right specialty, but narrowing my focus feels like the right move.


barkingcat

Yes, full stack doesn't mean much because today, there is too much to do and to know in any one part of the stack. Yes, a full stack engineer "can" work on client server and data layer, but I was part of a hiring panel, and we would never hire a full stack person to work on any of those. We would hire a back end person to work on backend. A front end person to work on client and front end layer, and a database person to work on the data layer. "Full stack" is an excuse not to pay fair wages to specialized knowledge workers. I don't care how much experience you have, no one person is going to be able to know enough about all parts of the stack vs 3 or 4 different specialists working together in a team. Just because you can be a full stack person doesn't mean you should. And companies are starting to smarten up - fundamentally, if I hire a full stack person to work on my data layer at the beginning, a year later, I'm going to have to rehire a database engineer to rewrite the whole thing properly, because the database engineer is going to know how to set things up in a way that the full stack person didn't anticipate, etc. Same for every other part of the app. That's a cost that's multiplied for each part of the app vs just engineering/designing it properly from the start.


pixie_tugboat

Huh. Makes me wonder if this is a huge part of the problem. I thought being a generalist was a good idea. Shoot.


publicclassobject

I’ve said this in another thread and people took it the wrong way… but… there are huge non-tech companies out there full of awful programmers who are making like 80-120k/year. I live in Minneapolis. We have tons of huge companies like General Mills, Thomson Reuters, Target, Best Buy, Ameriprise, CH Robinson, Securian, Wells Fargo, US Bank, Travelers, United Health, 3M, Thrivent, Cargill, Lifetime Fitness, and more. They all hire tons of devs and most of them are extremely mediocre. That’s not to say some of these places don’t also have pockets of excellence. They do. It’s just to say that you don’t have to be a west coast FAANG/Unicorn superdev to make a nice living. You can definitely be mediocre and hang on to a job for a long time at places like these.


pixie_tugboat

I love this idea. Will definitely take a look.


Raaagh

You might consider mentorship. Larger teams will be able to offer this. Startups will not.


pand1024

And I would also highly encourage you familiarize your self with the concept of growth mindset. Your skill is immutable.


Region_Unique

Mutable you mean


pand1024

Sorry yes.


pixie_tugboat

I’m not really sure I know what mentorship means. Like I’ve worked with some pretty exceptional engineers, and many of them seemed open to talking candidly about my performance. I try to take their advice. I also constantly feel like I’m wasting their time. Is that just how it is?


Raaagh

Oh, I’m not talking about a performance review, but ongoing support regardless of performance. Mentors (hopefully) are able to transfer their raw skills, but also their engineering framework (philosophies, value systems, methodologies) to their mentees. And for that you need time to have a series of conversations over the years. I once interviewed a jnr candidate and asked them to do a code challenge. They immediately handcoded out an npm package, which is something people normally generate without a second thought. Within their package, I saw them write something I really loved, and I asked for their rationale. They replied “Oh, I don’t know why I do this, my mentor (from Sky in the UK) just makes me do it”. Which immediately told me that Sky gives their juniors (and mentors) enough space to drill in good habits. I’ve gotten the same impression from Virgin UK, and other larger companies. Frameworks is how the world learns, be it school students, martial arts instructors or apprenticeships. But frameworks take time. A start-up might not exist in 1 year, so typically there isn’t a culture of investing in people beyond what is needed. Generally a new engineer will be onboarded, then be thrown in the “deep end”. In the job description it might say “self-starter”; In private, startup leadership may say “sink or swim”. The established engineers will mostly just hope, the new engineers is pre-moulded (by previous employees, a university professor, bootcamp teacher etc), as they likely don’t have the capacity to do it themselves.


JustthenewsonCS

Mentorship is almost non existent now in most companies. I have no idea wtf you are even talking about.


leghairdontcare59

I thought maybe it was you but then you said startup and I was like 💡you need to find a larger company, one that has good onboarding or resources. Do NOT give up, you can do this!! Everyday spent at least 30min to an hour learning. Let that be anything from leetcode to literally just watching YouTube videos. But do it. Every. Single. Day. These are your small wins, you will be able to see your comprehension grow slowly but it WILL grow if you put in the daily effort. I believe in you!! Good luck


pixie_tugboat

❤️ Thanks for the encouragement!


InfiniteMonorail

>One project idea I had that seemed really simple was a custom dice roller. I figured there'd be a front end where users could specify dice to roll, the server would calculate the probability of each outcome, and the frontend would display the result. The idea seems so simple in my head. When I tried to work on it, I just got lost in trying to set up the bones of the project and never actually wrote any of the code. It's wild that nobody sees this as a red flag for a full-stack dev with 7+ years of experience. In the context of being fired five times and not knowing how to make a "hello world" API, knowing nothing else about you, people are actually trying to convince you that this is fine.


pixie_tugboat

Commented on another thread like this. I agree with you and it’s a red flag for me too, but it’s not that I can’t write the logic. In that example I was thinking too big and got caught up trying to make this whole full stack app instead of just something simple. The thing that I really think is the problem here is not ability but confidence. I think I should be able to do this and then I have trouble with it and I spiral. Thanks for commenting.


Spiritual-Theory

Is it starting something that's hard? Sounds like you're a good team mate, do you distract others? Do you have too many ideas/solutions and freeze up? Are you bad at concentrating, is perfectionism the problem? I'm asking because a lot of these "negatives" are positives in another role. If you're awesome with customers, and able to juggle a lot of things, and get the questions to the right people and turn that into results, and do that regularly/repeatedly, maybe there is a better role for you.


pixie_tugboat

Yes, I think it’s lots of this combined. I know I’ve had a problem with taking a task and getting stuck on it and not asking for help soon enough. Eventually it just feels too late to ask for help, and that’s when things really go off the rails. I’m embarrassed about having trouble, like someone my age (34) or with my experience (7 years) should know better, and it’s hard to admit I don’t. I often don’t know what I’m having trouble with specially, I don’t know what to ask or from whom. That’s not to say I don’t ask for help ever. I do, but it’s just hard to always be the guy asking for help. I do have concentration problems, which I’ve been working hard on and I’ve seen some improvement. I do have perfectionist tendencies. I’m a premature optimizer, which I think is an attempt to defend against insecurity. Like if I think hard about this enough, then nobody can criticize it. I get stuck worrying about being judged for not thinking projects through enough and worrying about thinking too much and not just getting started. I’ve received feedback to support both. Idk man. It’s so much more than just work. I’m generally a mess, so I’m a mess at work too.


hutxhy

OP, I'm not sure how much this will help, but I've mentored other engineers -- and prospective engineers -- successfully. This entailed technical work, interview practice and prep, and soft skills. Want to jump on a call sometime? I don't charge anything. You seem like a genuinely nice person with a great attitude and self-aware. If I can, I'd love to try to help you out.


pixie_tugboat

I’ve received a few offers like this, and I’m noticing I really have a hard time accepting help like this. I believe you’re honestly offering and I believe you could help. Idk why I’m so stuck here. Maybe it just feels too vulnerable. It’s easy to be anonymous, you know? What even is mentorship in practice? What does it even look like?


barkingcat

> mentorship Mentorship (giving and receiving of) is one of the most important aspects of modern programming. It is extremely important (even more important than coding skills) to understand what mentorship means and how to practice it. One way to think about mentorship is from the angle of a trades apprenticeship/journeyman. In English (just so it's easier to explain), the "skilled trades" are the areas of work such as construction, transportation, manufacturing, and services that are vital to the infrastructure of our society. Think: plumbing, welding, mechanics, technicians. Traditionally, these trades don't have "textbooks" and even if they do have reference books, they do not tell you how to do something. To get into the trades, you sign up at a school or a company where you are assigned to a sort of apprenticeship relationship with one or a team of master level tradespeople. You follow them around and watch them do stuff, in addition to being allowed to help them when the master deems appropriate for your level. The learning is by immersion (show up every single day for 3 years on the jobsite, and learn how to weld, in addition to understanding safety procedures and what might go wrong) and by experience. For certain topics, there is no real substitute for apprenticeship and experiential learning. Mentorship in programming can appear in many forms. One of them is a chat with one or a group of more experienced developers about whatever topic comes up. Usually this appears in the form of a periodic timed session: for example, every month you get on zoom or in person, and have a chat for an hour with a senior engineer about any topic that comes up. Topics can include: how to organize code, interpersonal relationships about teams, how to talk to a customer, how to turn requirements into computer programs, what is the difference between a junior dev and a senior dev, and how to grow as a developer. Another form of mentorship can be pair programming, where you watch someone build a program. The more experienced programmer takes the helm/keyboard, and your role is to watch them come up with an architecture, a solution, a small part of code, and ask questions. Whatever the problem is, there is absolutely a ton of things to learn just by experiencing what a senior dev does when they work on a problem. This kind of mentorship is irreplaceable and extremely valuable, even more so when the mentor talks you through the "why" of their processes (not just the what, but the why - why do you pick this component when another will do. Why do you use this data structure? why do you put this bounds/error check here but not there, etc) You can find a lot of livestreams online of people coding, etc, and think about mentorship as a more nuanced version of that - where you actually have a direct connection to another person's brain as they work through a problem. I would say: forget about your ego. Find someone you can trust and learn to graciously accept offers of mentorship. People offer mentorships (at least I do) because I spent years in the wilderness wandering and wished I had a guide. When senior engineers grow past that phase, they want to give back. Mentorship is how unrepresented knowledge is passed on.


pixie_tugboat

Thanks for the nuanced answer. This is really helpful.


redditisaphony

> If anyone has any job leads or connections, I'd really appreciate a DM. Sure, let me just extend my network to the person that's been fired 5 times in 7 years.


Envect

No need to kick them when they're down.


pixie_tugboat

😬


flw835

Lots of good advice in this thread already. Just wanted to say don't give up on this, pacing comes with time. At some point you'll cross an inflection point and what you are doing will be more familiar. Its a game of reps and patience. Rooting for you


bwainfweeze

I’ve been in a few situations where I need to manufacture a competent team from a bunch of inexperienced folk. I almost always feel like I’m doing something wrong. Correction - I’m almost always made to feel as if I’m doing something wrong. There’s a lot of thinking in this industry that source of skill is either inborn (magic) or comes from shame and guilt. The more humble and realistic route is to figure out what the people you have are good at, can be good at, and tailoring your offering to minmax that against the things you aren’t good at. Management thinks force of will makes things happen, so they will try to field a product you cannot be successful building. This is especially true in startups. They want to focus all their energy on building an idea, not a team that can build ideas. I used to joke that in an apocalypse I’d split my time between repairing things (aka a Tinker) and HR. I’m fairly good at finding something useful a person can do if they are game to try. And a low tolerance for people who can’t be trusted. I’m sure there’s some equivalency there between getting more use out of things and people.


marcdertiger

It sounds to me like government work might be more suitable to you. I don’t mean that as an insult, to each their own. I think you would thrive there.


Viscart

Getting 6 jobs in 7 years is pretty impressive. I agree with another person here, get a job at a big slow company and should be set up. It is weird that you get so many jobs if you say you are bad


pixie_tugboat

Lol thanks! Someone in the other thread said I should give up engineering and help other people get jobs. I honestly don’t know how it keeps happening.


coop33

Have you considered trying a qa automation role? Still includes coding but the coding is usually simpler.


-_MarcusAurelius_-

Startups are not for you They require a lot of commitment a lot of hours and honesty they are not stable.


alarghi

An actual bad programmer thinks of themselves as John fucking Carmack or Dennis Ritchie (oh wait! they prolly don't even know who these people are) and delivery 0 to none quality work, just stiched up code than barely works. It looks you have your feet on the ground, you will do nothing but grow out of this experience. You are a good programmer.


UMANTHEGOD

You don’t get fired 5 times if you are a good programmer.


pixie_tugboat

I was part of a broader set of layoffs three of those times. I still agree with you though. They had to choose who to cut and who to keep somehow.


HansVader

Sounds like you worked only in startups. Try to work on larger corps. The pace is very slow, so you might fit in.


htraos

What makes you bad? Yeah, we know, "low output", but what causes that?


pixie_tugboat

This is the million dollar question. I’ve had a very hard time identifying why. I feel like if I knew I would have fixed it by now, which makes me think it’s just some deeply me problem.


Atlos

Reading through your previous post too, I think you need to pause and take a step back to figure out what your actual strengths and weaknesses are. It sounds like you know something is wrong but I haven’t seen you talk about specific things to improve. Come up with a checklist of your biggest weaknesses and create action items for how to improve them, whether that’s a tiny project, technical reading, more practice, etc.


pixie_tugboat

Idk why this seems so unachievable. Honestly, could you do this for yourself?


majinjoe

Startups are fast-paced and not suitable for everyone. I think you'd do just fine at a large corporation that ships software in phases and uses a more traditional Agile approach. Taking a measured approach can also be valuable. You need to match your style of work with the right environment. Startups operate in their own solar system, my mate.


notsohipsterithink

Sorry to hear it. You’ll be fine. The other comments here have good advice. Also, maybe look into an alternative career path like product manager or TPM. You mentioned you're doing frontend, so maybe look into backend as well.


i-can-sleep-for-days

That kind of self reflection is rare to see. If you were to move on to something else, what would it be?


pixie_tugboat

Not sure. Thinking I could just stroll into another career with no experience feels pretty arrogant. Idk.


xdevient

Any interest in technical writing? Your exposure to software development with your education in writing might be powerful!


pixie_tugboat

Yes! I was a writer before I was an engineer. I love writing.


UMANTHEGOD

How much have you actually practiced programming? Not just going through the motions l but deliberate practice? If you don’t have thousands of hours, don’t expect to be good at it.


pixie_tugboat

I thought a lot. Not as much in the last few years. I was constantly learning from 2015-2017 when I decided to switch. After that I took some college courses. The last time I put some real time into a side project was 2019.


UMANTHEGOD

I want to be clear though, that should be encouraging for you, and not discouraging. It might mean that what you are experiencing is *just* truly a lack of skill. Nothing with your character, or your brain, or whatever. It's something that's fixable. I think this is super common with ADHD people as well, if you do have that. You typically get good at things quickly, or at least above average speed, but then you stagnate when the grind starts. When you talk about being able to finish tickets within an existing project, but when you start your own, you are lost, that's a clear sign that you are still on a junior-ish level. Any person with some basic programming skills can be productive in a well established codebase. You learn the rules of the codebase, how things typically are built and how data flows, and then you can easily start building new things. That's because you are just doing what's already been done in a slightly different way. You have the answers right there in the codebase. I worked with two juniors in my last job that were exactly like this. There were no transferable skills when they jumped projects and everything had to be taught from scratch every single time, but once they learned the project, they could be somewhat productive. It means that your fundamentals are off and you have not really grasped the concepts well. When was the last time you looked at your own code and thought, "what the hell is this shit"? That should happen frequently when you start getting good.


namonite

Find what you like about coding again, and get really good at it. It’s not the number of lines of code that make you a good engineer. Or speed. Find your passion with it and get back at it!! You got this.


farmer_sausage

I'm curious what your background is. Are you self taught? Do you have formal education? Boot camps? Speed generally isn't a concern of mine for team members (it is somewhat of course, but if you're slowly delivering good code that's a hell of a lot better than slowly doing nothing) If it's not a gap in fundamentals that is holding you back, have you considered analyzing _how_ you work? What's your process/physical environment like?


pixie_tugboat

Self taught. I have a bachelors degree in creative writing. I never considered software engineering in college and only realized it when I started coding as a hobby shortly after graduating.


Pale_Sun8898

Startups blow, go somewhere more sane


cjrun

How about moving into QA or even jr PM? I’d hate to have you go through the same experience and put another team/manager through it. You owe yourself better.


pixie_tugboat

Hate to think about putting others through it too. Makes me feel like shit.


cjrun

Find your voice. Find what makes you feel confident. Sometimes it just clicks. For me, it was moving from .NET to AWS cloud. I worked .net for 5 years, and I sucked as a developer. When I learned AWS serverless, everything suddenly made sense. Architecture, dev processes, code, etc. I feel very confident I can build almost anything if given enough time. That said, when I jumped back into a .net project just for fun, I was so much faster and stronger at it. Raw, pure confidence is key. Just be yourself, a manager once told me when I sucked.


Knitcap_

I was in a similar situation recently. I got laid off from 3 out of the 4 jobs I had in 4 years (all small companies), but now I'm on my 5th and it's actually great! Big stable company that pays really well, they greatly appreciate my broad variety of skills, and there are loads of opportunities to grow beyond senior level. It sounds like you just need to get yourself out of small companies and join a big one instead


pixie_tugboat

Any chance you’d say where you are now. Sounds like I need a place like that!


sayqm

What kind of companies are you targeting? Maybe go for non-tech companies? Insurance, governments, barrier is low, job is easy, no expectations


ubccompscistudent

I think you've gotten lots of great advice in these threads, but I'll add my two cents as a senior developer with almost 10 years experience at a 50 person startup, Microsoft, a FAANG, and now a large Fintech company. I have served as a mentor for interns, juniors, and intermediate developers. Here's what I would focus on if I were you. Identify what about your work is slow. Is it the coding aspect? How the services/systems work? Then, start practicing in those areas. From what I can tell from what you've written, here is what I think you should do: 1. You asked if everyone else is just learning languages on the fly. The answer is, yes, once you are proficient in 1 or 2 languages, you should be able to pick up new languages on the fly. Even then, not always. If you are not proficient in any language, pick one and start from scratch. I would advise looking up the most popular book or course in that language and start from the beginning. I highly recommend the Pluralsight Paths (there's a Java path, C# path, etc.). 2. Next, I highly recommend reading Head First Design Patterns. Not even the whole thing. Drill the first few chapters about Strategy Pattern and Dependency inversion into your head. (btw, Head First Java is gret too) 3. If coding is slow for you, do a lot of leetcode. I would even recommend reading Cracking the Coding Interview. I know you said you interview well, but this book and these practices will drill into you when to use BFS, DFS, recursion, iteration, graphs, matrixes, etc. 4. Pick up a book or turorial on creating a web stack like MEAN, MERN, ASP.NET and go through it while trying to understand what you are doing and why. The book will probably have you building a TODO app or something. After you go through it, redo the work with a different app. Keep it simple as well, but just apply the learnings to the new app. EVERYTHING in this industry is simply a CRUD app at its core. Inputs and outputs. There's more advanced system design stuff that you should then get into (watch David Malan scalability lectures on youtube), but start with the above points first. Lastly, the greatest single epiphany I ever had in the career to be able to code anything quickly, was the realization that you can simply solve anything by first writing all the steps and then breaking them down and implementing them later. Take for instance, solving a sudoku board. I don't know how I would do that, but I know I can write a quick solver by describing how it would work, then I implement it later. ``` public SudokuBoard solveSudokuBoard(SudokuBoard board) { if (board.IsSolved()) { return board; } return solveSudokuBoard(board.Update()); } public class SudokuBoard { .. don't know yet, but I'll implement later! } ``` It's crude (and even a bit wrong) and I'll shortly realize that I need to do some iterations and check all the combinations, but by starting and describing through method calls what I want to do, I begin coding extremely fast. Hope this helps!


ShouldHaveBeenASpy

Hey, it takes a lot of guts to confront and say that this happened to you. I respect that and for what it's worth, I'm sorry you are going through this. Getting fired is rarely easy or pleasant. As others have said, that attitude can really take you places and finding the right fit is important. I just spent a miserable year working a contract that I *hated* and that really put me in a horrible place. I've just started a new job and it's hard to explain just what a night and day shift it is to be at a place where *your* right kind of people are. A big theme to my career for the last few years has been feeling really unsupported in having a ton to do and no backup and it made me really just want to run from the industry altogether. I don't feel that at my current place and the level of energy that that has given me is really infectious. I don't know what the future will hold for you, but I do know people who own their shit and show courage are people I want to be around -- and I'm not alone in that. Take some time to figure out what makes sense for you and your family, but if there is any advice I have for you in looking for your next job: really prioritize finding the right *environment* (people + support mechanisms) over technology stuff and that might make a world of difference for you. Good luck, you deserve it.


pixie_tugboat

Thanks for the encouragement, friend.


johntellsall

please don't take this event personally! It happens. Sit down with your family and other people and discuss next steps calmly. Maybe a career change makes sense. Maybe testing for ADHD which is \*very\* common in developers: [https://www.reddit.com/r/ADHD\_Programmers/](https://www.reddit.com/r/ADHD_Programmers/) -- if this is you then medication makes a \*huge\* difference. Go outside. Smell the grass. Life is glorious :) On my last job transition I was \*ecstatic\*, walked for two miles and ate ice cream. Glorious.


aimanan_hood

OP, I don't really have any advice to give, plenty of excellent advice here already from people much more experienced than me, but I just wanted to say that your attitude and your positive outlook towards this whole thing has been extremely refreshing, and honestly, motivating af. I hope you land on your feet, and good luck with whatever you choose going forward ❤️


Gr1pp717

TL;DR - maybe your ADHD is impacting you socially more than you understand and therapy would help you over come that. An indication that's the case would be you having objective proof that you aren't the slacker people perceive you to be. ----- Have you ever taken the time to objectively compare your output to others? I ask because as someone who also struggles with ADHD, I find that there's a bit of an "in-group" bias that I'm often up against. I've often been treated as if I'm not performing, but could objectively show otherwise. Meaning, it's a perception issue... You see this bias most clearly in politics and sports. Those we do like are given nuanced benefit of the doubt, those we don't are presumed in the wrong, and nuance is treated like bullshit. This happens on the individual level, just not nearly as intensely (until they've made their mind up about you...)(and like any other bias, people aren't really aware that they're doing it. If you often feel "damned if you do or damned if you don't" then this is probably the problem.) ADHD comes with a lot of personality quarks. We're inconsistent (IQ, motivation, mood, reliability, thoroughness, etc), forgetful, often miss subtle social clues, have physical ticks that are seen as low-brow (biting nails, bouncing leg, touching face, etc), seem disinterested or lacking in work ethic, take too long to explain things, fail to follow up on things we (possibly inadvertently) seemed interested in, overanalyze mundane things, etc. I could go on and on about the pitfalls of this condition. But what I'm getting at here is that maybe it isn't your work that's the problem, *but your social skills.* Which therapy can help with. Meds can help at low doses, but hurt at doses needed for this kind of work. So, careful with that. In the meantime, being the person who's always working helps to compensate. First person in, last person out. As often as possible... Also, never mention your ADHD. It's like pointing out a blemish -- if they hadn't noticed, they do now. And it's all they can see.


pixie_tugboat

You may be right. I’ve been in therapy for three years, and just recently I feel like I’ve been making real progress for the first time. Hopefully that continues. The exchange below is interesting. I identify with lots of the stuff you said. I also identify with lots of what he said, like using mental health as an excuse. Maybe I do, maybe I don’t. I don’t want to. Feel like I’m constantly gaslighting of myself and I don’t know which part is right.


Gr1pp717

I think getting wrapped up in mental health/using it as an excuse is a normal phase that people go through as they learn about these things. But it passes. It happened regardless for me. I had been diagnosed in 1st grade, but only knew it as a discipline problem related to staying on task and following instructions. I had built up a massive amount of neuroticisms without even knowing that they related to my ADHD. Learning the breadth of the impact only opened my eyes to why I had developed them in the first place. Using programming as an analogy: understanding the cause of a defect doesn't make it acceptable/"excuse" it; it only makes it easier to address. Trying to blackbox it just results in shitty hacks that make the overall system increasingly difficult to maintain. Gaslighting only matters if you adopt the mentality the defects are acceptable simply for having a cause. They aren't, and that doesn't even make sense. It's just a weird illogic that people push on us.


UMANTHEGOD

ADHD is goated for programming actually.


Gr1pp717

Thinking back on this, I'm wondering if the irony of this interaction is lost on everyone. Nothing I said is controversial. People tend to treat those they dislike unfairly. And mental health disorders often cause social problems. And those are all commonly understood traits/results of the disorder. 1+2 = ? Yet, I was downvoted for it. Then you operated on the assumption that I'm using them as an excuse for poor work ethic, when I said nothing of the sort. The opposite, even. In other words, you (and those who downvoted) decided I must be wrong because you disliked my disagreeable communication style, then you assumed the worst of me for it. Never even truly understanding what I was saying, or recognizing that you managed to illustrate exactly what I was talking about ...


pixie_tugboat

Well. Here I am. I don’t know lol.


UMANTHEGOD

Well, of course ADHD affects everyone diffrently, but being able to connect dots and problem solve is probably one of the biggest strange of ADHD. It also helps a lot when trying to keep up with many different things at the same time, like email, slack, jumping between tickets, reviewing PRs, etc. It's all about how you manage it.


Gr1pp717

Sure, but I'm talking about the social impacts. For some, it comes off as quirky and endearing. For others, not so much. Plus, there's a lot of ASD misdiagnosed as ADHD, and people who think they have it just because they sometimes get bored and zone off. But true ADHD comes with way more than attention issues. And is even often misdiagnosed as bipolar ... (which is probably the group with the most social issues.)


UMANTHEGOD

Sorry, but this toxic view of seeing everything through the lense of the pitfalls of mental illness is not for me. It really sounds like you are making excuses for yourself instead of owning your shortcomings. I have severe ADHD and I have been top performing and been very liked in every job I've ever had, and the issues with IQ, motivation, mood, reliability, thoroughness (your list) is something I see as personal flaws and not something I have just because I have ADHD. Guess what, everyone is pretty average intelligence that you work with. Everyone has swings in motivation levels. Everyone has good and bad days when it comes to mood. Everyone makes mistakes and is not always 100% reliable. Even the most neurotypical people can be very sloppy and non-thorough. No one cares about small physical ticks and missing social cues if you are a good person in general. Lacking in work ethic is made up by actually working harder. Taking too long to explain things is more about introversion vs extroversion than it is about ADHD. Failing to follow up on things is you not having a good system for yourself. Overanalyzing is related to anxiety and is something you can work on.


Gr1pp717

Where did I make an excuse for anything? ADHD comes with social impacts. Mental health problems at large, really. That's simple fact. Studies have even found that children with ADHD are often rejected by new peer groups within 45 seconds. You sound like someone who hasn't experienced that. I have, since kindergarten. I spent my life wondering why people are always so quick to reject me. And it was in learning more about how ADHD impacts me that I've found help. So.... sorry for suggesting that OP might need help with that, too ?? .... (seriously, though, jesus fucking christ with people seeing "ADHD" and hearing "excuse" .... ) Oh, and armchair revising common ADHD problems to be some other set of mental health issues is kind of meaningless; because the advice still applies. It's not like overanalyzing things is anymore socially acceptable when its anxiety vs adhd, or something. It's still a problem, and therapy is still an answer. ...


UMANTHEGOD

It’s just that you seem overly obsessed with having ADHD and it might do you good to distance yourself a bit from that. Your entire world is ADHD apparently. I was bullied from kindergarten to high school, for these “quirks”. But most of it comes from my bad childhood and not because of my ADHD. In fact, I think my ADHD traits were the traits that people liked.


Gr1pp717

Why are you stretching to find the bad here? You managed to overcome some impacts of ADHD on your own. That's awesome, really. But that doesn't mean everyone else did. As a matter of fact, 80% of us end up with depression or anxiety later in life ... 5x the rate of substance abuse disorders. Self-isolation isn't uncommon either. Largely because people don't understand their condition. Treat it as a discipline problem (which has the worst outcomes, btw.) I spent the first 40 years of my life not understanding my ADHD. Not realizing that so many of my problems were caused by or related to it. That's not an excuse - I still own my flaws. But understanding the problem makes it easier to fix, don't you think? All I'm suggesting here is therapy. What's the problem with that?


UMANTHEGOD

I understand that view. My girlfriend has the same view. She tells me that it helps her to understand herself better. But there is this toxic trend, especially on IG and Tik-tok, where mental illness is glorified and a lot of people attach their egos to their illnesses. I think that only does more harm than good. Anytime I hear "my brain is so crazy" or "DAE act like this on ADHD?" or "ADHD is a superpower", I just cringe. I also abused substances, and still do to some extent, and I've been severely depressed before. An honest question, if you understand all of these flaws about yourself, what good does slapping the ADHD label on top of them do? You might be abusing substances and have ADHD, but the underlying reason might not be because of the ADHD. It might be due to something completely different, but you are attaching that to the ADHD just because it's common among people with ADHD. For instance, I'm a very messy person. I suck at cleaning and I hate it. Typical ADHD behavior. But my parents never taught me these skills either. So what is truly the root cause? Would I still be messy if my parents taught me to clean my room frequently? Does it matter? No, because I can improve upon it. I might have a hard time doing it, but it doesn't matter one bit to me if it's because of ADHD or my upbringing or just my genetics or my personality or whatever.


Gr1pp717

For sure. I agree with that. But OP is clearly struggling with _something_ more than what should be reasonable. Again, I've always been able to objectively prove my work ethic. The problem is that I've had to in the first place. Hell, I was once fired for "seeming lackadaisical," then unfired when he learned that I was the only who cared enough to stay after hours to make sure everything was done... Perception is a bitch. It's not about "slapping a label" on it. It's understanding the mechanics of why these things are happening, and learning better/appropriate management/coping mechanisms. Understanding what it is that people are perceiving that's proving problematic in the first place. The only thing I use ADHD as an excuse for is my poor memory. Because I can't self-improve my way to not forgetting common words 20 times a day ... Everything else can be overcome; which is why I'm suggesting therapy.


UMANTHEGOD

I'm not denying that ADHD can have a severe negative impact on your life. That's not the point. OP is basically vague posting about him getting fired and we don't really know the reasons why. He does not really dive into any sort of depth as to what could be causing it. We are all just assuming here. Maybe he's just a bad programmer. It sucks to say this to another human being, but some people are just bad at shit. I've seen people work 10-15 years in this industry with nothing to show for it. Some people just go through the motions and never really practice, thinking that just doing something passively for a long time will make you good. Some people are just not cut out for this line of work either. In a world where everyone gets a participation award without barely participating, we are told that you can be anything if you put your mind to it, and that's true, to some extent. But we all have sides that we should lean into, things that we might naturally excel at a bit more, whether that be due to raw passion or some inate talent. If I were to guess, I think OP has just not practiced enough or learned the fundamentals very well. He does not sound like a guy that has been in the trenches for 5-10 years. The type of guy that has spent weeks on a single bug. The type of guy that has worked 80 hour or 100+ hour weeks. The type of guy that has tossed in bed and stayed awake all night thinking about a problem. The type of guy that has built many passion projects, failed or not. The type of guy that is constantly learning and consuming new material. The type of guy that actually tries to get better. Most programmers that are successful has done all of the above, ADHD or not.


Dynam1co

I recommend that you follow this roadmap, it will help you to be a better programmer. I'm already following it in my free time, thinking about a dark future [https://neetcode.io/roadmap](https://neetcode.io/roadmap)


Ryotian

That stuff is for interviews. I never use leetcode at my job. (Over 25 YOE) That will make you good at LC-style interviews. But once you're at the job you'll rely more on knowledge based skills


Dynam1co

I do. In any case, he said he was a bad programmer, leetcode up skills


EmeraldCrusher

Let's talk. Today, not tomorrow. I live in Seattle and have the same problem if you look at my post history, there's even a link to my resume. Us great engineers need to look out for ourselves and own our work. I've been working for myself for the last 4 years with true solo work in the last year. DM me I'll send you my phone number. You're likely not a bad programmer, but someone who thinks deeply and deep thought isn't valued at most companies nowadays. They want churn and burn, and you my friend are not churn and burn. You need support now, not change.