Ask HN: What huge mistake did you make early in your career?
We’ve all been there — a seemingly huge mistake as an intern or Junior developer that you were sure would get you fired. What’s your story?
Mine: I nearly took down production by joining multiple large tables on non-indexed columns. Every time a product was updated on the site, MySQL would run my query and join across millions of records.
Infrastructure folks couldn’t figure out why the DB servers kept rubbing out of memory, and I very nervously made the fix. Thankfully the team was understanding (and appreciated that the person reviewing my code had messed up), but it was a terrible day.
An open Ask HN community consultation from 2021 where @jamestimmins convened hundreds of developers and bootstrappers to share real experiences, hard numbers, and tactics.
Hundreds of active indie hackers contributed case studies, pricing heuristics, and pitfalls to avoid when moonlighting on side projects.
Mistakes?
(1) By accident, I had a relatively good career going around DC in applied math and computing for US national security. I thought it would help my career to know more math so got a high quality Ph.D. in applied math. I WAS then better qualified, but I also had broken my career continuity. My brother saw that early on: "After your four years in graduate school, you will be four years behind in your career."
And, I didn't realize that the opportunities in DC were unique or nearly so. I would, could, should have (A) not assumed my career would work away from DC and (B) stayed in DC.
Lesson: If you have a good career going in DC, NYC, Silicon Valley, wherever, don't assume without good evidence that that career will also work in another location.
(2) Near the end of my Ph.D. work, I had a part-time job and did some good things. Then occasionally a person never seen before was in the office for a few hours one or two days a week and wanted to chat with me about whatever, even sports. Eventually he got my opinion on what the US did in Viet Nam. In retrospect I was being recruited for some high end highly secure slot but violated a rule Mom gave me -- never talk about politics, sex, or religion. I had talked about politics. Don't do that. So, being frank and honest about Viet Nam cost me a good career step.
(3) Dad's idea about a career was to get a good education and, then, a good job based on that education. Eventually I concluded that, nope, instead, with or without a good education, it is from important to crucial to own a business and to make it successful, and early in a career near the top of the TODO list is to find a way to own and run a successful business.
(4) I didn't understand an important point about career dynamics: (A) It is tempting to guess that academics is good preparation, maybe the best, for a non-academic career. (B) Instead, for a successful non-academic career, it's important to ride the waves of the hot topics, and, bluntly, academics is largely out of touch with what the hot topics are. (C) While some academics can help, possibly a lot, there is a special way to know what the hot topics are in a non-academic career -- see what work and topics people are getting hired for.
Net, be reluctant to let academics tell you what will be important in a non-academic career and, instead, let a non-academic career tell you what topics are important for you in academics. And if have a good ugrad education, then pursue those topics while on the job by independent study evenings and weekends, maybe partly on the job -- to pursue those topics, don't leave the job to become a full time student.
E.g., when I was in my Ph.D. program, there was a prof, soon famous, who apparently had been hired as a consultant to work on a topic, call it, X. Well topic X was in practical computing, a bit tricky, not at all a topic in academics, and from my non-academic work a topic I knew well. With resentment the prof asked me: "I suppose you know X?" I had a one word answer: "Sure". Really it was a collection of topics such as X that had my career going well, e.g., annual salary six times the cost of a new high end Camaro. For that summer job working on topic X, the prof was about to have a tough time!
(5) One possibly good career direction is to get a job in a startup in its early days and get stock. For the stock, before joining (A) get the stock deal in WRITING, (B) study the details of the stock deal (e.g., vesting), and (C) have the deal reviewed by an appropriate lawyer. Handshake deal? Don't do that.
(6) Applied math and, usually, computing work or don't independent of human emotions. People, however, commonly are driven more by their emotions than what is true in math or computing. It is crucial, then, to pay close attention to the emotions of people.
As a special case, one way to get people to hate you and work against you is to present some work in math or computing that (A) has power important for the organization, (B) is understood only by you, and (C) looks rock solidly correct and, thus, not easily ignored. Then the people who hate you maybe cannot find fault with your work but might be able to arrange to get you fired.
Part of one way to get you fired is gossip -- be aware that you may have to defend yourself proactively, guess what you are secretly accused of and then defend yourself against the accusations.
More generally, whenever you start to be especially successful, you will attract attacks like some piles attract flies.
(7) There is discrimination in the US. Not often mentioned is that there are some cases of severe discrimination in the US against native born Christian males of European descent. So, it can be important to realize that fact.
(8) Try to keep confidential and not to report on work in progress: If your work looks good, your enemies will try to kill off your work before it starts to show its power or arrange to take credit.
(9) There can be corruption, e.g., people getting quite secret financial kickbacks. So, you can get a bitter enemy if, even without realizing it, you threaten their corrupt money. So, at least try to guess who might be corrupt and how, and then try to avoid that person or their source of corruption.
Of course, if there is someone corrupt in the part of the organization chart you manage, you will likely want to get this person moved out. Of course if the corrupt person has some close, say, family, connection with, say, a member of your BoD, then you have to be careful!
Point: Be aware that corruption exists.
I took down all cellular data traffic in Philadelphia for 2 hours.
I wrote the operating procedures for performing a backhaul upgrade in preparation for the launch of LTE. The upgrade was being performed on our primary routers which all traffic traversed. The operation had been performed several times successfully, but after the last implementation before the issue, I was informed that a couple of the lines were wrong (they had extra arguments). I did a find and replace all, shot the document off to the next team, and went about my day. The technician who was doing the upgrade called me on the afternoon of the upgrade (it was a Sunday) and asked if any of the initial steps were disruptive as he wanted to get started on the prep work ahead of the maintenance window. I said no and he proceeded. Mind you, this was also during the World Cup so I was out at a bar with my friends and not paying attention to my phone. About two hours later I looked at my phone and had multiple missed calls and voicemails from him, so I immediately ran to the MTSO. Turns out my find and replace changed some commands - the end result was that instead of adding additional VLANs to in-use interfaces, it replaced all of them with the new ones, which weren't carrying any traffic.
The fix was simple, we had failover routers and at some point after he couldn't get in touch with me the technician reached out to one of my peers who quickly told him to failover. He should have known to do that but he was also panicking. I called my boss and told him what happened and that it was my fault (and I genuinely believed it was. I wrote the bad procedure AND I approved activities outside of the maintenance window), and he told me to be at the office with the technician first thing in the morning the next day.
I couldn't sleep that night, this was early on in my career and I thought it was over. But that meeting ended up being one of the most transformative moments of my career. My boss's boss, a director, quoted the FAA's ethos of how a good system should have checks and balances, and if a mistake happens, the system is at fault, not any individual. We walked through the play by play and identified multiple opportunities to both avoid the issue that arose and to resolve the issue more quickly. We came up with an action plan as to how to make sure our "system" was more mistake proof for next time, and that was that.
That meeting has always stuck with me, and I always remind myself of that conversation whenever things at work don't go as planned. There is almost always something in the system that can be improved to account for human error, which should be expected.
I worked at a really toxic job at a hedge fund where I let them burn me out in a year and then they fired me. Several mistakes were made:
1) I failed to realize the importance of face time/asses in seats time. I was spending tons of ime working late nights and weekends solving hard problems outside of trading hours where nobody could see the hard work I was putting in. Also, being the only hourly, all of my coworkers would disappear early Friday afternoon and everyone else senior in the department would ask me to do weekend work that would effectively have me working 2 days of overtime without going home. Essentially on Fridays I worked for 3 straight days without going home every weekend for 9 months.
2) I accidentally exposed an embarassing mistake made by several seniors in the department. A simple question that I asked in a meeting when I saw how two pieces of network gear were hooked up identified that if either went down we would end up with a network loop and a minor catastrophy for a very expensive trading system. Two of the network engineers in particular were really angry at me for this and would no longer speak to me afterwards. Apparently correcting the mistake took several weekends of off-hours work.
3) I let an absolute snake in the department "mentor" me when I was new. I failed to realize she was using me as an opportunity to reassign her work. When I got sick for three days with a sinus infection, she reassigned hundreds of her outstanding tickets she was delaying on to me and then started calling me out in department emails asking where I was and why I wasn't handling the tickets. Nobody bothered to look at the history before forming their opinions about me. Luckily, she's no longer in the industry and works as a baker.
4) I let the traders physically abuse me. One asshole spilt a cola on his Bloomberg keyboard and I was at his desk with a replacement within 5 minutes. Apparently I wasn't fast enough for his liking and he spent that few minutes kicking me in the ribs as hard as he could while I was under his desk hooking up the new keyboard.
5) I was addicted to World of Warcraft. Despite the long hours I spent at work, I unfortunately filled my free time with video games instead of finding a better job.
Frankly, the biggest mistake of my career thus far has been starting it. I didn't get in to a university, so I bumbled around for 6 years at a community college. In the middle of it, I managed to get a 6-month stint at a help desk (which I needlessly proud of, and then promptly fired from). Went back to the community college, burned out on trying to get an associates and transfer, and tried changing course to getting some sort of certification. Ended up with a CCNA (which expires later this year), but it turns out nobody near where I live wants to hire a network technician or engineer without a diploma, and my savings aren't enough to move.
So now I'm in my mid twenties and I've only just managed to get an (unpaid, remote) internship thanks to a sympathetic small business owner whose pet technical project is falling behind schedule. Every time I open the project management tool, I feel a vague sense of unease because I'm socially tone deaf and I can't tell if I'm breaking some unspoken rule about "don't word this message this way because you'll sound too confident for an intern speaking to the senior developer," or "don't make a comment on this task because it's assigned to an intern on a different team and you're not supposed to go out of your lane."
I've been writing code of some sort for 11 years, and using Linux daily for 8. Every day I wake up in my childhood bedroom and send my one remaining friend a message. Sometimes she even replies. Then I have the pleasure of spending most of the day fighting with some stupid self-inflicted issue, like why Ethernet broadcast breaks every week on OpenWrt, or why Pulseaudio uses 200% CPU when I try to get it to communicate with a certain cgroup, or what I'm going to use when Fedora 33 hits end of life and I have to get some other DE set up to replace GNOME.
I've dug myself into a labyrinthine, unsatisfying, inescapable hole. So if I could do it all over again... I wouldn't, because, like a ball on a hill, I'd end up right back in here.
Yes, I got one which affected me a lot.
It was a story about my last manager. 2 years ago, I transferred to Cloud team internally from blockchain. Yeah, both of them were so hot and even today. I had to make this transfer because I have to relocated to another city where my family resides. And my mom was so sick, I had to consider to take care of her. This is the background.
At the first few weeks, I tried to learn the new knowgede of cloud native and it was so depressed. I was so new and I was not an open man. Because my mother's health condition always makes me so gloomy. I could not be open. So it was not efficient. Well, I love opensource and I have some experiences. So I was assigned to do some open source projects for our products. Now here we have the them:
1. My manager called me to out of the opensource team for something else that I did not listened and not interested at that time. 2. He said this was his team and he was the only man can decide that no one could change.
I was a little shocked at first. And hated this then. But I could not change this. I knew the only way I changed this that I argued with him or leave. I knew at that time every body in our team had quarrelled with him. But I felt down at that time I could spare the energy to fight.
I made my mistakes. Not sure this was a mistake. I have no idea who things would went if I had a different choice. I chose to accept it even though I felt so bad. I could have choosen another blockchan startups.
So I had a bad 1.5 years work experience in my career. One interesting story:
My manager wants us to show our minds about team. Guys had their voices out and the summary sent to him, which were all agaist him. Can you image what he looked like?
He denied all the comments from guys. And continued to do as his will. Then 8 months later, our team was laid off, all but me. I had a health condition at that time.
It was a bad experience. I should not have hesitated. I should have called out my thoughts. Or just leave.
Life is short. Please stay happy and focus on the lovable things.