Day In The Life Of A Software Developer

Day In The Life Of A Software Developer cover image

One of the most important things to consider when looking at a career switch to being a developer is what your typical day will look like. Software developer roles can all look the same from the outside but what your day consists of can vary significantly depending on the type of software development you are doing, the age and scale of the business and the type of work they do.

Below is an overview of the types of days to expect at different places, make sure to read to the end to see an overview of what will be common to all of them.

Software developer at an agency

Agencies deliver software projects for clients who don't have in house developers, need more capacity for a short period of time or simply don't have the skills in hose for a specific type of work. Agencies tend to have many projects underway at once and you will be assigned to one or two of them for a few months at a time. Your main focus will be on building the features required for your clients project with fairly strict deadlines, the client wants the software and your company want to make the client happy.

Agencies can be stressful to work at, you will need to work quickly, efficiently and be very good at keeping stakeholders up to date. Expect a few more calls each day that you typically get in other types of companies and the expectation that you will deliver.

The enormous positive is that you get to change projects every few months, which can feel like a whole new job, you get exposed to a wide variety of technologies and you spend little time maintaining legacy code and fixing bugs.

Software developer at an established company

Working for an older, more established business who's main business focussed isn't directly related to technology (like a manufacturing firm, retailer, bank, energy company etc) will see you working across internal projects that help the business achieve its primary aim. You will feel more in a supporting role where the work you do is less about "cool tech" and more about "is this the best way to help us sell more widgets?" (whatever those widgets might be).

There is less pressure than an agency however deadlines are still very much a thing and other departments will be relying on you to complete work for them, likewise you will also be reliant on other departments delivering on their promises to you and you could get held up waiting for marketing, finance etc to get back to you on something.

You will also have a lot of legacy code to manage and monitor. This will help you get used to working with a large code base and debugging weird issues far more than a new greenfield project.

Work will feel slower and you won't feel like you achieve as much as you like many days but that's to be expected and totally fine, you are not here to crank code, you are here to deliver on what the business needs, and bug fixes for users is very high on that list.

But there will most likely be good processes in place, the company will be stable and they will offer a lot more beyond just coding and an office full of bean bags. Larger established companies offer a career path, a sense of achievement and being part of something bigger than just a single deliverable.

Software developer at a start up

Start ups are cool, hip and fun. They inhabit the middle ground of the established company and an agency. There is legacy code but it's not that old, there is pressure to deliver but there's no external client impatiently jumping around and you will have to do a bit of support and bug fixing but it mostly feels like feature work so it's not that draining.

Being a software developer at a start up is seen by many as the perfect balance, the enormous trade off is instability. The company might not have found product market fit yet, it might not have even launched and the founders are trying to raise money to keep the lights on, there will be minimal documentation and processes in place and the code base will be full of shortcuts and hacks.

The flip-side of this is that you can have a huge impact on your team and the organisation, if you join a company of 20 people then you are 5% of the company, that's a huge opportunity to input on product direction, working practices and you might even get some equity.

Software developer typical day

Above are three examples of what a developer role can feel like at different companies that employ software developers, lets wrap this up with what a typical day might look like no matter where you are:

Morning:

  • Stand up meeting with team, 15 minutes. Talk about the work you are doing, any blockers you have.
  • Development work on your current feature. This could be solo, paired with another developer or a mix of both.
  • Chat with user or product owner. If you need to clarify something about your work the quickest way is to talk to the person using it or the person in charge of the product.

Afternoon:

  • Team meeting to look over the backlog of work and plan how it will be tackled, group exercise in which everyone gets to have input on how the feature/solution will be implemented.
  • Investigate and fix a bug related to a support ticket, lots of looking through logs, talking to the user/support person and trying to recreate it.
  • Development work on your current feature, adding documentation.
  • Reviewing another team members code.

Software developer day summary

Every company is different and one of the amazing things of being a software developer is that if you find you don't like one style of work then there are thousands of other companies who work differently. Sometimes you can get into a regular pattern of work but it's unusual to be just cranking out code each day for hours on end, from the outside it might look like we are just twiddling with computers all day but it's a lot more than that!

  • About
  • Blog
  • Privacy
Looking to email me? You can get me on my first name at allthecode.co