Have an Answer?
All those things depend on company culture. Throughout my internships and now with my full-time, the expectations truly vary.
In most cases, the hours are pretty flexible as long as you get your work done. Some companies even allow you to work from home for some of your hours.
As companies move toward the agile software methodology, that requires a little more face time because there are daily meetings, possible paired programming, and other types of collaboration.
As far as stress, as long as one is vocal about issues early, collaborating towards creative solutions make things a lot less stressful than if you were working on tasks alone.
To find out what path is good for you, you really have to experience different companies and find out. Definitely try to have at least two internships before you leave college. This will give you a good idea of what you like.
Companies are begging for software developers right now. You should be able to find a company that fits your needs.
The best way to understand what it's like to be a software developer is to try it out. I remember taking CS classes in college, and how different it was from being a programmer in industry. In CS classes, you have TA's and templates for your assignments, but on-the-job, you often need to set up your environment, and may not necessarily have somebody hand-holding you through the process.
As far as the stress, it can be stressful since in many businesses, it comes down to what the software developers can produce. Promises are made to customers, and it's up to the software engineering team to deliver to keep those promises. In a well structured business, there is a level of trust between business and engineering so that there's good, seamless communication between the two.
That said, it can be a very fulfilling job. Developing a piece of software and seeing somebody use it and having a positive impact on their work and their lives is rewarding in and of itself. You work hard, and you have a tangible impact!
The best way to get the feel is to get an internship. There's a huge demand for software developers in the industry right now, and many companies would be happy to take on a talented software developer intern as yourself.
Can be stressful depending on how you define stress. it's not as though you'll be operating heavy machinery, but you'll work with people that want something from you and understand very little of what it takes to get it done. you'll also deal a lot with the nerd stereotype that you're either undervalued or easily replaced. despite this, the salary figures are usually pretty nice.
Yes it is as stressful as you make it. It depends on the work culture your company has.
Sometimes you work 12-14 hours or weekends but then you get comp. off or if you are a contractor then you are paid more. But it is flexible most of the times. Few companies allow you to work one day from home per week, so that is good too.
And it really depends on what part of the SDLC you are in. Developers typically start working after BA does requirement gathering and functional doc is ready(if it is a process in the company you work for). Typically you have to estimate how much time it will take you for development and unit testing (estimates get better as project progresses) and then solve bugs if any. To know if you are a good fit or not, try it for an year or two and decide.
Software development is as stressful as you make it. Programming can be very frustrating at times, but if you really enjoy it, then you'll be willing to go through the stressful times when your code doesn't work to get to the sense of accomplishment when it does.
Expectations for developers depend on what job you get and what company you work for. Computer science has a lot of different opportunities from requirements documents writing to web development to technical consulting to software programming. It depends on what part of computer science you enjoy the most.