7 answers
7 answers
Updated
Aaron’s Answer
The work environment varies from company to company and industry to industry. Some industries are more successful than others and some teams are more cooperative than others. However, I think that could probably be said about any job role and industry.
The most common environment for software engineering is Agile as Nitin mentioned. The Agile frameworks are meant to help make software delivery more regular and predictable as well as reduce cost. In an Agile environment you can expect regular ceremonies from stand-ups to planning. I added some sites for more information and further study in next steps.
Scrum.org
Less.works
Scaledagile.com
The most common environment for software engineering is Agile as Nitin mentioned. The Agile frameworks are meant to help make software delivery more regular and predictable as well as reduce cost. In an Agile environment you can expect regular ceremonies from stand-ups to planning. I added some sites for more information and further study in next steps.
Aaron recommends the following next steps:
Updated
Biju’s Answer
It looks like everyone provided a detailed insight into the environment. From a career perspective, during the initial period, you will be working closely with Sr.engineers to analyze the requirements, develop new features, fix bugs and support production systems. As you progress and based on the depth of knowledge you make , you can involve in to analysis, design and indepentaly develop features. At the next level, one can develop skills to design complex features, architecture and support a group of engineers. This is an ideal scenario and vary based on organization.
Updated
D S’s Answer
It varies from company to company. In general it will very professional. Most probably, you will be working on the state of art technology. You get an exposure to whole Lifecyle of product development in a product company. There will lot of opportunities for learning new skills.
Updated
Devin’s Answer
Environments vary wildly depending on the company and role you . I can say for the average Software Engineering job at the typical tech company, you're day will be less programming than what you might be used to in High School or College programming classes. That's not to say there won't be days where you really get into programming something for hours at a time but there's more interruptions. Working in a company means more collaboration and steps before you can act. It's a slower working machine that takes time to grow accustom to. Being on a team has it's benefits too, getting help, being able to know people and more will naturally happen. Normal work day stuff like company wide communications, meetings, socials, insurance become a natural part of work life.
Updated
Victor’s Answer
Do you enjoy solving complex problems? If so, the role of a software engineer can be a great choice for your career. Software Engineers are hired to design and develop software solutions that help provide a better experience for users of any software. You have to be willing to investigate multiple options and analyze which solutions deliver the best results.
Updated
Nitin’s Answer
The environment varies widely depending on the team and organization. You may hear stories of engineers working 80-100 weeks but this is typically very rare and only during a crunch time such as right before a big release. For the most part companies are working in what's known as an agile environment where they are assigned tasks to complete over a specified period of time or for a specified release. Depending on your skill level you might be finishing your tasks and working only 10 hours a week, or you could you be working 50-60 hours if you are still learning and trying to figure stuff out. For the most part I see engineers logged on from 9-5, though it's not uncommon for people to choose to finish their work in the evenings, and use the day time to take care of other tasks like admin work. The career really allows for flexible work, and as many teams are now fully remote, it's becoming more and more common for people to set their own hours.
Updated
Mark’s Answer
This depends on your organization. Nowadays many software shops are using Agile techniques and open offices. This means you would spend much of your time talking about the software with your customers and team members. A daily stand up is used for everyone to report out on what they are working on and what issues they are having. A show and tell is scheduled every few weeks to show the customer progress on the software. Requirements sessions are held where team members and the customers talk about the features they want to implement. Planning sessions are held to decide which features to work on next, and to estimate how much effort they might take to implement.
In an Agile working environment your teamwork and communication abilities are just as important as your coding abilities. This is a long way off from the software world twenty years ago - which was more focused on documentation and heads down programming for hours on end.
In an Agile working environment your teamwork and communication abilities are just as important as your coding abilities. This is a long way off from the software world twenty years ago - which was more focused on documentation and heads down programming for hours on end.