A day in the life software developer




















Software developers among highest paid jobs in the world. Technically skilled immigrants are gentrifying city X. Photo by Max Duzij. Yes, software developers code every single day at work without exception. What is this like, exactly? Let me draw from my experience doing this for over a year to paint you a picture.

Today I have chosen to work on a fresh task. I go to my desk and the first thing I do is check Slack to see if there is anything urgent I need to attend to. Thankfully, nothing. Okay, great, now I can think about how to implement this task. I read through the Jira ticket, which always contains information that provides the context of the problem, to see what I need to know before diving into the code.

This caused confusion and added extra load on our customer support, and is why we got feedback that we needed to fix it. Makes sense! I know that once I locate that, it will be my entry point to trace where else the information flows in and out of, and I can make code edits in those places as well if necessary.

I make some progress. But as I feel good about my job in general, I realise my mind has become saturated and that I need a break. I was able to create a small program to control a small LCD-display.

At that point, I saw programming as an area with endless possibilities to create and learn. That was when I decided to continue with computer science at university. I have two areas of specialization. One happened by accident, and the other is powered by a drive to always improve. Since I started building websites at school, by the time I started at university I had been programming websites for six years.

More or less by accident, websites were a topic I was quite proficient in. It prompted me to start my own company building websites. Owning a company that specialized in building websites gave me a unique perspective on the topics taught at university. It definitely helped a lot to be able to put everything together in real-life projects.

Ever since I started programming, I started getting into trouble. As my programs grew in size, they became too complex to manage. As I gained more experience, the size of my programs could grow larger before they became unmanageable. The topic of how to build software in a way that made programs manageable in the long run became something close to my heart. I have pursued learning more in this topic ever since. Programming is a huge area with many different aspects.

But the key to them all is continuous learning. To become a programmer, you need to know that programming requires learning every day. Even for people working in the industry, it never ends. The fun part of programming is problem-solving: getting a task, cracking it, and creating a good solution. What educational path did you take to become a computer engineer?

Did you pursue additional education at any point? What was your educational experience like? I took the formal education path: studying computer science at university and gaining a master's degree in artificial intelligence. The reason for pursuing the certifications was to have a goal to target while studying the technologies. My pet peeve with university education is that it is very targeted towards arcademia and not industry application.

But during the courses, it is not apparent at all. If I didn't have my own company allowing me to contrast the learnings with real projects, I would have had a hard time. Instead, it allowed me to focus more on the areas that were actually useful. Except for my university degree, there haven't been any certifications that were required.

The certifications I pursued have been for my own learning, and not because they enabled me to get a promotion or other benefits. For interview questions, I practiced by doing tasks at www. For certifications, I use a combination of reading books and watching videos on the subject. I try to compress the study time and the exam so I don't end up forgetting most of the information.

I love interview tests. The type of questions is like small puzzles, which allow me to showcase how to create a solution. On programming days, I have a list of tasks — usually written as user stories explaining some change to the system. I then put headphones on and start my integrated development environment IDE.

The first thing I do is create a test case for the feature I want to implement. When the test is written, I start writing the code to support it. Then, I look at the solution I made and see if I can make it better. Maybe a variable could get a better name, or a method should be in another place.

I continue with this iteration until the feature is complete. If I enter a flow state, I can work for multiple hours like this without noticing. On refinement days I meet with my team, which consists of other programmers and business people. We then discuss which new features we want to have in the system. At the end of such a meeting, we have a list of user stories that are ready to be worked on.

Definitely problem-solving. There are few things as satisfying as creating an elegant solution to a problem. Software is like a black box. When a customer asks for a change to make the software do something else, then I need to look into the system to understand the implications and how to do the change. In some cases, the change is simple and could be done in five minutes.

In other cases, the change is almost impossible and will require months of work to complete. And the challenging part is that from the customer's perspective, the change requests seem quite similar.

This is the most challenging part to me. What advice do you have for individuals considering becoming a computer engineer? Software development is a relatively new field, and as such, is less understood than other professions that have been around a bit longer. A software developer is a broad term that applies to people who think of, design, and build computer programmes and applications.

They can work on mobile or desktop systems and build underlying systems for tech and companies. Before we dive into a day in the life of a software developer, we should add two disclaimers: Obviously, the job varies day-to-day. Also, every company has its own culture and quirks. At various points, you will ask for advice or give advice. Depending on the environment, you might chat or send a message via Slack or IRC a form of chat popular among software devs.

If members of your team are free, you might go to a whiteboard together or sit together and then diagram and work out a solution. Then you might possibly go back to struggling! They might have ideas or solutions of their own.



0コメント

  • 1000 / 1000