A day in the life of a programmer

Technology companies are no longer the only ones fighting for the best programmers. As the digital economy tightens its grip, large businesses in every sector are looking to recruit them. Most firms, however, don’t really understand what they do or how to attract them.

A day in the life of a programmer involves the obvious tasks of building and deploying websites, applications and programs, but there are other tasks that don’t appear on a job description. From client-servicing to firefighting, programmers wear multiple hats.

What makes a good programmer?

With website glitches and urgent client issues cropping up at any given moment, programmers need to be able to switch between tasks rapidly. Perhaps less adrenaline-pumping is the admin side of the role. Daily team stand-ups might not seem thrilling, but are important as they detail which programmer is working on what job and ensure everyone is focused on the task at hand. This might seem arduous, but it avoids working on a project for several hours, only to find out that the requirements have changed.

While it’s not a necessity, most programmers will have studied coding and computer science at degree level. Alongside this, training with Microsoft.NET web applications, Sitecore and Sitefinity provides the skills needed to be successful. Programmers must be patient team players and problem-solvers with an eye for detail and a willingness to learn. Keeping up with the latest trends, being able to explain technical problems to non-technical people, and an analytical and creative mind are key traits. Often they’re given an abstract requirement and must quickly come up with a solution to fulfil it.

Previously, programmers would work with system administrators and servers, but the rise of cloud platforms has evolved the role into that of a DevOp whereby they build their own environment within the likes of Microsoft Azure. The emergence of artificial intelligence means a day in the life of a programmer continues to change as software allows them to write better code with less bugs and more time to focus on development rather than maintenance.

“Greater automation will not only free up programmers’ time by cleaning up code and telling them when they’re doing things wrong, but might also lead to less people on the ground,” says Jason King, head of development at marketing agency Lewis Global Communications.

“A day in the life of a programmer might appear to be reactive, but a lot of proactivity goes in and this tends to add the greatest value. By optimising code, programmers can scale back computing resources, helping to minimise costs.”

How agile has impacted the programmer role

The move towards agile ways of working is also influencing programmers’ work. The old waterfall methods of delivering projects are dying out, which means developers need to not only work more closely with the business, but at pace. The traditional roles of developer, tester and business analyst are increasingly merging into one as developers write their own automated tests and speak to business users directly.

The way agile teams are striving towards continuous integration is a great example of how automation is impacting the programmer’s role. They are regularly pushing new code to development or test environments, checking if any of it is broken before it makes its way through to production. This process is now one click and testing code can take around 20 minutes, whereas before it could take up the best part of a day.

“Writing good code that is easily maintainable is incredibly important,” says Eleanor Hughes, a web developer at BP. “Developing and building applications that can save the end-user time and make their jobs more efficient is a big win. IT is no longer just a support function. Programmers really drive value within a business and are a key component to many new innovations. Automation has made a significant impact to all the roles in the life cycle of code development and allows programmers to fail fast.”

What programmer job satisfaction looks like

With demand for good programmers already high and continuing to grow, it can be extremely difficult to attract strong talent in this area. As well as wanting what most employees do – an attractive salary, good training, a clear career trajectory and a pleasant working environment – programmers also want to work with the latest technology.

Pauline Narvas is part of the growing number of programmers who don’t come from a computer science background, but found a passion for the development world.
Having studied biomedical sciences, she joined EE’s graduate scheme last year and is now in the programming team working on the My Account area of the EE website. Her day-to-day tasks include coding, working on code reviews and attending planning sessions.

For Ms Narvas, the product and technology stack she would be working with played a major part in her joining EE over other companies. Knowing she would have frequent opportunities for learning and developing her skillset was also a must before even applying, weighted evenly alongside other factors like culture and work-life balance.

“It’s a great feeling when I see my code go live. I feel like I’m adding value at EE,” she says. “I like to reflect on every contribution I make, looking at how my code has impacted customers who use our services. No matter how big or small the changes are, I always feel like I’ve helped at least one of our customers.”

In the future, programming will be much more streamlined as automation enables programmers to write less detailed code and become more managerial, focusing more on the build itself, rather than being sidetracked with maintenance tasks. The tools programmers use will evolve and lead to a higher level of coding. Also, having access to these new tools and technology will enable programmers to teach junior coders best practices more quickly and lower the barrier to entry in the industry.