Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How much of your time at work as a software engineer is spent coding?
39 points by rmed 13 days ago | hide | past | favorite | 28 comments
very curious how different types of software engineers spend their time.

i'm working at my first big company. even within the company it seems that our engineers have vastly different types of jobs. some spend a lot of time writing application code. many others doing devops and configuration/deployment (and just justifying the work they're doing or waiting for answers).






As a principal engineer at a 3k employee company, my amount of coding has shifted down to around <30%, but it comes in tides. Last week was zero coding, but the two weeks prior, I had fun coding 6 hours a day. But generally, I'm at the point where two hours of coding is about all I can hope for.

When I was senior at a 500 person company, I could spend half the day or less in meetings, but not every day. Maybe 70% coding.

When I was at more of a start up and midlevel, my meetings tended to be 1hr-2hr or less a day, several days only with scrum.

When not coding/testing/code-reviewing, it is meetings, notes, documents, communications, driving alignment, finding requirements, digging into data, ...


Funnily, I spend my daytime researching, reading code, meetings about meetings, gathering requirements.. doing the human interaction aspect. I'll spend a lot of time assembling modules in my mind, while doing the dishes or house chores. By experience, I prefer spending days of hard thinking and hit the keyboard once I know where I'm heading. Coding is easy, programming an efficient system is hard.

I'm exactly the same as you mnault000.

Typing code is the easiest part!

The tough part is the whole thought process you have to go through to visually see the whole picture more or less completed.

First, write it down, break it to smaller pieces, find potential obstacles that could backfire at any time, break it down to even smaller pieces if possible, and then convert the whole procedure to coding.

To me the most difficult, yet challenging thing to achieve is to train your mind to think as simple as possible, to the point of exhaustion.

If you start thinking complicated patterns and methodologies, eventually you will end up with an over-engineered infrastructure that could have originally been implemented with standard tech stack, for example in web development with LAMP and a shared hosting service.

If code base is rather small, refactor as soon as possible and follow techniques that allow you to expand your project(s); else, you end up maintaining legacy code that takes a great amount of effort to interpret of what actually does...and good luck with that!


I know it goes against TDD but I have the same thought process. Lots of time thinking and then implementing when I'm convinced of the design choices.

:)

My answer is: as much as possible! I willingly took a 50% paycut this year and left my $big_company job to invert the 80% meeting / 20% tech ratio, and it was the best decision professional decision I've ever made.

On a day-to-day basis, there's always going to be a cyclical element -- I just spent two weeks writing code nine hours a day to push through a big feature, and now I expect to spend a week or two on less focused work, catching up on all the things I ignored while I was heads down.

I also try to turn non-code work into coding work. In lieu of doing a BUFD, I'll try to throw together a proof-of-concept or do a spike. Whenever there's a production issue, I try to turn that into a project to eliminate that class of issue. If there's some repetitive administration to do, I try to automate it.


I'm not sure why it pays less. It's a "demotion", but between a skilled middle manager and skilled developer, the skilled developer is more valuable. I actually got a slight pay rise going from mid manager in a big company to developer in a startup, albeit I had to give up the free parking, nice dinners, and free coffee/boba.

> between a skilled middle manager and skilled developer, the skilled developer is more valuable

I disagree. While the skilled developer might add to the teams output, a skilled manager will multiply the output (by 1.x) of the whole team.


Meh, you need both skilled developers and skilled managers.

I spend a long time getting requirements for a job. Then a couple of days reading documentation and slowly coding my way into a bunch of corners resulting in code that doesn't work. So after 3-4 days of "working" on a project, I'll actually get into a groove where I can knock out a decent app or tool in about two days. Then add another day for testing and documentation. With fixes needing to be made here and there, that means two good days of coding (and a couple days of bad coding that might be thrown away) for two weeks.

If I start spending a lot of my time coding, that means I'm running off without getting requirements, or I'm stuck with a problem I don't know how to make progress on. So for me this is a good cadence.


These days it is around 60% vs meetings, however soon it will get back to 90% again when work starts on the new product.

As a junior developer, I spend around 4-5 hours coding and the rest of my time is taken by meetings and code reviewing

As a senior developer, I skim the code reviews and spend a few hours to fix the mess this creates.

Haha absolutely true !

50%, I'd say. Breakdown:

- Reading code: 20% - Writing code: 10% - Debugging code: 20% - Meetings / administrata: 10% - Other productive tasks: 10% - Goofing off: 30%


I'd say less than 2%. These are ball-park-guesses...

-Reading Code: 3% -Writing Code: 2% -Debugging: 15% -Meetings/Administrata: 20% -Docmentation/Paperwork: 20% -Testing: 20% -Other productive tasks: 15% -Goofing off: 5%

Note: When I say "debugging", it's often not debugging code. Sometimes it is, other times it's user-error, hardware malfunction, mis-understanding of the spec, etc.. A good chunk of debugging time is spent eliminating software as the failure. I work on highly regulated medical devices and their connected systems.


I'm tech leading a small project (~5 people). How much time I spend coding varies quite a lot, usually 20-50% in a typical week. I spend more time than I would like in meetings of various kinds: interviews, 1:1s, planning for the next quarter, etc.

I’ve been freelance for a year now and so far it varies hugely. My biggest two projects this year took several months of full time coding and not much else, occasional discussions over slack. In between where longer periods of not coding at all, doing tax and trying to generate leads.

I'd say about two-thirds of the time is coding / engineering work. The larger a project gets, the more coordination is required in order for all its pieces to come together at the right time and in the right way for it to to succeed.

I'm a senior full stack engineer that is considered a lead developer on a project usually. I spend about 20 to 30% of my day coding. The rest of the time is code reviews, pair programming, reading, and meetings.

The overhead of Agile/Scrum/SAFe takes around 30%, other meetings take another 10-20%, other stuff probably takes another 10-20%.

So there are weeks with 30% coding and others with 50% but not much above that.


>(and just justifying the work they're doing or waiting for answers).

I am curious as to what you mean by this? It sounds like you are suggesting that this work is not valid? Is that what you think?


Here is a quote from "The Tale of J. Random Newbie" by ESR:

"He had heard in college that in industry, a hundred lines of finished code a week is considered good performance."


Probably around 4 hrs a day (or half a day). The other time is taken by code reviewing, video calls, spec writing & research

30%, the rest is just emails, thinking, slides

around 40% unfortunately. I wish it was closer to 75-85%, but I was moved to a cloud computing focused team that seems to involve mostly dealing with configs and the AWS console, which personally I really don't enjoy. I hope to go back to doing mostly backend web dev and other related work soon...

How much of a carpenter’s day is spent assembling wooden structures vs. measuring and cutting?

2



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: