Live data from Hacker News

Ask HN: I've lost faith in myself as a developer, how do I get it back?

news.ycombinator.com

1–10 of 243 posts

Ask HN: I've lost faith in myself as a developer, how do I get it back?

#1
I've been a software developer for about 12 years, the last 8 of which I have been the CTO of a company that is growing like crazy. Recently I have been doubting every move that I make and have lost all faith in myself as a developer. When I look at a new feature I just think that I will make it shitty or get called out on not doing things the "right" way. The thing is, I know I'm a decent developer but I find myself doubting every single decision that I make. Is this burn out? How can I get out of this funk and move on?

Re: Ask HN: I've lost faith in myself as a developer, how do I get it back?

#2
Well, look at the positive side, as a CTO you probably don't have much time to code anyway.

Jokes aside, did something happen before? Did a software not perform or caused problems? You say growth is fast. Sounds good and that means to make compromises here and there in software that might not fit your aspirations of quality.

Is this a new position? Or did you see a topic that was just beyond you in any conceivable way? I guess making wrong decisions comes with the job, but as long as business is good...

Re: Ask HN: I've lost faith in myself as a developer, how do I get it back?

#3
Athletes who have a long career will sometimes take time out to reinvent their game. So do some software developers.

Your best bet is to do a project entirely different from anything you've done in a while. You can vary: (1) the domain of the project (what it's about) and (2) the technology behind the project.

When I was really sick and tired of programming I enjoyed playing with Scratch with kids. Many coders, including myself, have a blast with Arduino and other embedded boards.

Re: Ask HN: I've lost faith in myself as a developer, how do I get it back?

#5

Well, look at the positive side, as a CTO you probably don't have much time to code anyway. Jokes aside, did something happen before? Did a software not perform or caused problems? You say growth is fast. Sounds good and that means to make compromises here and there in software that might not fit your aspirations of quality. Is this a new position? Or did you see a topic that was just beyond you in any conceivable wa…

I've been CTO since the beginning but it was almost all coding in the early days. Now it is much more of a management role. I actually just started the process of stepping down and going back to being a developer because I dislike the management side of things a lot.

I think I am questioning my abilities because we built things in questionable ways and now everything that I have done is being scrutinized by all new team members. It's really hard to deal with that constant barrage of "why did you do it this way" all the time.

Re: Ask HN: I've lost faith in myself as a developer, how do I get it back?

#6

Athletes who have a long career will sometimes take time out to reinvent their game. So do some software developers. Your best bet is to do a project entirely different from anything you've done in a while. You can vary: (1) the domain of the project (what it's about) and (2) the technology behind the project. When I was really sick and tired of programming I enjoyed playing with Scratch with kids. Many coders, inclu…

Sometimes coding just sounds like the worst thing I could possibly do. I do enjoy thinking about writing some code but when I sit down all enthusiasm goes out the door. Maybe I need to tinker with something in the real world tangentially related to code and that will help.

Re: Ask HN: I've lost faith in myself as a developer, how do I get it back?

#7
CTO and developer separate into distinct roles as a company grows.

How big is this company?

Is it a small company with few developers where you hold the CTO title because you're a founding developer or the most senior developer? If so, you might be missing the reassurance that came from your previous life where you had a manager to check your work, peers to review it, and feedback from people who didn't report to you:

> When I look at a new feature I just think that I will make it shitty or get called out on not doing things the "right" way.

At a startup, the "right" way isn't necessarily the most textbook-perfect code. The right way is getting features shipped as soon as possible with the code being good enough to be understandable, stable, and maintainable. You need to be careful about spiraling into decision paralysis or drawn out refactor iterations and instead focus more on shipping features to users, focusing effort where it matters for the business, and avoiding unnecessary complication in search of perfection. Perfectionism will kill startups slowly.

If you're the CTO of a big company with many developers reporting to you, then it's time to start letting go of the developer responsibilities. Trying to manage the code too closely or trying to insert yourself into the development teams that you're supposed to be managing doesn't work at scale. Focus on the bigger picture: Driving objectives, mentoring developers, hiring, monitoring output, and other leadership roles. Don't let a desire to control the code interfere with your management duties.

Re: Ask HN: I've lost faith in myself as a developer, how do I get it back?

#9
This article popped up here a while ago and I think about it a lot in context to this exact question: https://zapier.com/blog/actual-impostors-dont-get-impostor-s...

As others have noted I agree that building something (even not software related) helps get me out of these kinds of funks. The reality of your position is that you likely are at a point where you have hired people to make the important technical decisions in terms or architecture, design, and "engineering" and you hired them because they are specialists at that. In todays dev world there is too much to know about to many things to keep full grasp on it all. Your job as a technical leader is to drive the trajectory of the project in the right direction and that often means trusting the leaders of various teams to make decisions about individual technical topics so long as it meets your higher level goals as an organization. Remember Wernher von Braun was not designing every piece of the Saturn V he was driving the project to success.

Post reply on HN