If I want to become a Software Engineer, do I pretty much have to practice programming 24/7?
- 4 weeks ago
No, 8 hours a day is enought
- The_Doc_ManLv 71 month ago
No. Software engineers who know only programming and nothing else are actually useless as software engineers. Engineering is about solving real-world problems, so you have to understand some topic which you will use as the basis to seek employment.
As a software engineer, you might have to work in an architectural engineering company, in which case when your boss talks about strength of materials, you need to know enough to understand the problem. If you work in an industrial manufacturing company, you need to understand work flow. If you work for a chemical company, you need to understand the mechanical aspects of how batch synthesis works even if you don't understand the detailed chemistry behind it.
So just remember that engineers work on someone else's real-world problems. They are the middle-men between computers and reality and therefore they must speak BOTH languages.
Now if you wanted to become an operating systems analyst or a security engineer, you would STILL need to know things about statistics and enough about electronics to be able to talk to the network guys.
I know this because I worked as a software engineer for over 12 years at a company that did oil and gas pipeline control systems, and I worked as an OS & security engineer for the U.S. Navy for over 28 years. If you put on the blinders and only study programming, you won't know enough about real-world stuff to be useful.
- 1 month ago
Learn how to code on udemy.com.
- 1 month ago
Not 24/7. You should program a lot though. Program as much as you enjoy programming. If you don't feel like programming one day, don't. You don't have to dedicate your entire life into this 24/7.
- What do you think of the answers? You can sign in to give your opinion on the answer.
- 2 months ago
7/24 seems to be adequate 😊
- SamwiseLv 72 months ago
I don't think so.
To be clear, I think you should become competent at programming, in multiple languages and on multiple levels, from applications in higher-level languages employing systems interfaces, to low-level work including assembly language.
But that shouldn't take ALL your focus. For one thing, the languages you study might not turn out to be the ones needed for a career. So understanding how to LEARN a programming language is more important that burying yourself in it, writing code.
Another useful skill is understanding someone else's code, and writing your own code with enough clarity--including comments--that someone else can understand it, too. A lot of software engineering is done in groups, and analysis of someone else's work is an important factor in success.
I would advise learning how to spend time on design. And on communicating with other people. Both skills can help avoid problems; it's hard to code without a clear design, and it's hard to have a clear design if you don't understand the needs of the users.
Also, there are ways of managing your time efficiently. Now, you'll probably start out being TOLD what to do, and what to focus on. But there are still strategies for avoiding wasting time. One I learned from a video course on software engineering--this was decades ago--was the simple rule that there are more efficient methods than immediately testing the code as soon as you've written it.
Now, the people who designed the course were expecting people to hold "code review meetings" with colleagues at that point, and frankly, the shop I was in didn't have that much work time to spend on meetings. I would be lucky to have one person able to review my work, when it was tested and finished.
So, when I wrote an update, I first ran a code-differences program that picked out everything I was changing. Then I did a personal inspection, of my changes (and looking out for anything else I might want to adjust at the same time), while writing two additional documents:
- an explanation and description of the changes; and
- a test plan covering all the changes.
Only if I was satisfied with that review did I move to testing, and that meant the tests were far more likely to pass on the first try. Also, I had already produced the documents I needed to hand a reviewer, so as to minimize the amount of time I was asking the reviewer to put in.
What I'm describing is people skills. Consider other people--the time and needs of your reviewers, customers, and managers. And learn to value all the members of your team. The whole point of software engineering is serving people.
- Robert JLv 72 months ago
No, only 16/7, you can sleep!
If you are really interested, you will never be able to stay away from the computer and whatever project you are working on, any time you can possibly get to it.
Make sure you have plenty of coffee available, you will likely find that to be essential "brain fuel".
- Anonymous2 months ago
No, you are entitled to sleep at times.
- dewcoonsLv 72 months ago
Nope. Only 23 1/2. You have to take some time for sleeping. The Red Code Mountain Dew only us running for so long.
- David ELv 72 months ago
No but doing actual projects helps tremendously.