What distinguishes a good Software Engineer from a good Programmer? What are some tips to learn to become a good Software Engineer?
-
I think Good Software Engineer -> Good Programmer. Is the converse true as well? Can you be a Good Software Engineer even if you are an "average" Programmer?
-
Answer:
The answers to this question will all depend entirely on how the answerer defines the terms "good programmer" and "good software engineer." So, the answers are likely to vary, because those terms mean different things to different people. So, the answers tell you more about the people who answer the question than they tell you about the concepts of engineer and programmer. Sort of like a Rorschach test. :-) I think that being a good programmer means that a person is good at programming - good at the art of making computers to do what the programmer wants the computer to do. I think that being a good software engineer means that a person is good at designing software - deciding what the software should do, and how it will do it (to a high level of detail), and working with teammates, partner teams, and stakeholders to get agreement on whose software is going to be responsible for what, and when, and how it will be tested, and how it will be monitored. In theory, one person could work alone and do great software engineering, but in practice, software engineering is usually a team effort. So, doing good engineering generally means working as part of a team, and working with other teams. All of that said, some answers your questions... Most good engineers are also good programmers, and vice-versa, because in order to be good at either one, you need to be intimately familiar with how software works. But a person could be great at programming and terrible at working with other people, and that would make it real challenge for such a person to become great at software engineering. There's only so much you can do on your own, unless you've got truly heroic talent and lots of free time. Or a person could be great at translating vague ideas into actionable designs and plans, and getting buy-in from stakeholders, but not so great at actually writing code. I've worked with a small number of talented engineers who were not great programmers - their code mostly worked, but was painful to maintain. But they were entrusted with very large, complex areas, and they got their stuff done on time.
Nate Waddoups at Quora Visit the source
Other answers
A good programmer gets the job done...an SE worries about how it gets done.
F Allen Morgan
Related Q & A:
- What is a good software and SaaS product inventory management system?Best solution by Quora
- What is a good school to become a neurological surgeon?Best solution by urmc.rochester.edu
- What's a good site to make a good resume?Best solution by Yahoo! Answers
- What do you have to do to become a good architect?Best solution by Quora
- What is a good software to edit video?Best solution by Yahoo! Answers
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.