What is a "day in the life of a software engineer" typically like?
I'm a second year computer science major in college, and I'm curious as to what a typical day of a software engineer is like. Do you usually work by yourself coding for 8 hours a day, or are you working together with other engineers to program something? #computer-science #computer-software #engineering #software-engineering #software-development
Your typical day involves some amount of research and write some technical requirements for your project. Some amount of meetings with your co-workers, supervisors etc. Some amount of programming or writing unit tests especially if you are an engineer. Fix bugs and design new applications. Usually there are some are some fast and slow days. Few days you might be working more than 8 hours and some days you will be likely less than 8 hours. But it all depends on people to people. Most of the tech companies do not mandate a strict working schedule. But do expect that there might be some times where you might end up working on weekends as well. :)
Some companies also have some game rooms with some ping pong tables, pool tables, foosball tables. If you have some fun team members or like playing any of these games you might have some fun time as well.
It really depends on the company. I have worked with so many jobs in IT, and they all are very different. Some jobs I will spend all of my times coding, debugging, and doing something really cool, some jobs just dealing with setting up servers, and trouble shooting, some jobs will be design 30% of my time, non sense meetings and politics on the other 70%, some jobs I do nothing until I was sick of it and left. Some day I talked with people until I am exhausted then go home, some day I coded until there's no more sunlight, then code some more, some day I did nothing but scratching my head. It really depends on the company, your direct manager and the project you are on.
It varies from company to company, but for me, mornings often consist of meetings. When I meet with teammates, we discuss issues affecting the team and our projects, and ask for help if we need it. When I meet with project stakeholders, it's typically to discuss the status of the project, demonstrate what we've accomplished since the last meeting, and clarify project requirements. It's pretty normal for software developers to have more work than time, so we have a weekly meeting with management to prioritize our projects.
I try to devote the afternoons to writing code. Much of the time we spend writing code is actually debugging or enhancing existing projects, though there's still a healthy amount of new work. We will frequently have to port code written by other developers in the organization, and that usually requires some retooling.
Other tasks involve providing proof that our apps comply with company policies, like information protection, and validating that calculations are accurate.
Hope that helps.
For me it mostly revolves around my sprint, which is planned bi-weekly. In those meetings we plan what we'll be doing for the next two weeks. It's mostly driven by the company goals but usually consists of a mix of bug fixes, new features and cleaning up/refactoring. Every morning we have stand ups with the team, short 10-15 minutes discussing: what we worked on yesterday, what we are doing today, and any hurdles we're facing. Throughout the day we mostly work individually, but for some features we may collaborate with a team member or even another team. There is a lot of communication involved with designers, product managers, etc.. Usually when we write new code we pair it with unit tests for those features. There are also a lot of code reviews (looking at each other's changes and asking questions and making sure they're using the best practices). Hope that helps!