- #1
jimgavagan
- 24
- 0
Which is harder: software engineering/development, or network/system administration?
turbo-1 said:I have done both. The level of difficulty is related to the level of dedication you wish to apply to the job. Anybody that is willing to "coast" when things are comfortable will find neither job tough until situations get out of their comfort zone.
I have put in 80+ hour weeks coding custom software, but it was so interesting and rewarding that it didn't seem all that tough. Administering networks was less satisfying, but still better than mill-work or construction, IMO.
Do you like coding? Do you have the ability to invent some software that would help businesses address needs that they can't get off-the-shelf software to do? You should learn how to code, build some software, and compile it, and distribute it, to see if you have talents in that area. Remember that if you are a free-lancer (like I was) you are your own troubleshooter/help-desk, so your code had better be really good before you put it out there.jimgavagan said:That's exactly how I feel it would be for me - very interesting for software engineering, and less satisfying for admin.
How can I tell if I have the ability to become a software engineer?
turbo-1 said:Do you like coding? Do you have the ability to invent some software that would help businesses address needs that they can't get off-the-shelf software to do? You should learn how to code, build some software, and compile it, and distribute it, to see if you have talents in that area. Remember that if you are a free-lancer (like I was) you are your own troubleshooter/help-desk, so your code had better be really good before you put it out there.
turbo-1 said:Do you like coding? Do you have the ability to invent some software that would help businesses address needs that they can't get off-the-shelf software to do? You should learn how to code, build some software, and compile it, and distribute it, to see if you have talents in that area. Remember that if you are a free-lancer (like I was) you are your own troubleshooter/help-desk, so your code had better be really good before you put it out there.
EntropicLove said:If you haven't done any programming at all I would go with python for starters followed by c++.
I've found python to be a really practical foundation and really useful for writing simple applications.
jimgavagan said:Do you mean visual c++ or regular c++?
I would supply my standard accounting software (written in dBase III+ and compiled using the FoxBase compiler) to most commercial customers at little to no cost - just the time that I spent on-site installing and maintaining the package. As I got to know the owners, office managers, etc, I would ask them what problems that they had that were costing them time and money, and I would try to find solutions. A lady that ran an interstate trucking company was ranting to her dispatchers about drivers who would buy fuel in states that refused to pro-rate their fuel taxes based on miles driven. I asked her to provide me a list of states, their fuel/road-use tax rates, and whether or not they pro-rated. In a couple of days, her dispatchers had a software package that would allow them to tell the truckers where and when to fuel up, to minimize fuel taxes. The owner was thrilled.jimgavagan said:Also, when you say invent the software, do you mean that the coders/engineers come up with the software independent of any of the businesses' requests, or is it the businesses that ask for the type of software that they want you to make and then you make it?
The main difference between software engineering and network/system administration is their focus. Software engineering involves creating, designing, and maintaining software applications, whereas network/system administration involves managing and maintaining computer networks and systems.
Both roles require technical knowledge and skills, but software engineering tends to require more in-depth and specialized knowledge of programming languages, software development processes, and coding techniques. Network/system administration, on the other hand, requires a broader understanding of hardware, operating systems, and network protocols.
It is subjective to determine which role is harder, as it ultimately depends on an individual's strengths and interests. However, software engineering is often perceived as more challenging due to its complex nature and constantly evolving technologies.
It is possible for someone with a background in software engineering to transition into network/system administration, as there are some overlapping skills and knowledge. However, additional training and experience may be required to fully understand the complexities of network and system management.
Both roles require problem-solving skills, attention to detail, and the ability to work with complex systems. They also both require continuous learning and staying updated with new technologies and advancements in their respective fields.