It’s safe to say that software engineering is a hot profession. And it doesn’t look like demand for software engineers is going to decrease any time soon. So, if you’re thinking about becoming a software engineer, now is a good time to do it! But what does the future hold for this in-demand profession? Keep reading to find out!
What is a Software Engineer? According to Wikipedia, A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term programmer is sometimes used as a synonym, but may also lack connotations of engineering education or skills.
It’s hard to believe, but demand for software engineers shows no sign of abating. Despite automation and the ever-growing availability of open source software, companies are still finding that they need people with specialized skills to design, build, and maintain their applications.
The question is “Will software engineers ever stop being in demand?”
There are two schools of thought.
- Those with a background in business see developers as commodities and fully believe that programmers will program themselves out of a job field. The idea is that in some distant future, jobs like project manager, product manager, and marketing manager will still be critical but programmers themselves will be extinct as a result of the tools they created.
- The other school of thought is hard to understand because the programmers are laughing so hard they can’t talk.
Its funny that the marketing manager doesn’t think he’s going to get automated out of existence.
What’s interesting is that marketing and software engineers (product people) are inextricably tied and both respond to the ever-changing needs of human beings.
- 2022 AWS Cloud Practitioner Certification CCP Practice Exam eBook at Google Play Store Here
- 2022 AWS Solutions Architect Associates SAA-C03 Certification Practice Tests and Quizzes illustrated
- 2022 Microsoft Azure Fundamentals AZ-900 Certification Exam Preparation
Finance, Accounting and Operational functions will increasingly be automated. Marketing can automate some things but for the foreseeable future, you will need a human being to use a mix of intuition and data to figure out what to build, just as you will need a human being to figure out the best way to build it (engineers).
Any business partner worth their salt in today’s economy knows software engineers are your most valuable asset. Period.
“Any business partner worth their salt in today’s economy knows software engineers are your most valuable asset. Period.” I’m shocked and thrilled by this statement. I’ve often seen engineers treated as as expensive data entry specialists. But engineering has a steep learning curve and it requires a lot of time and concentration to master. Plus engineers acquire a lot of tribal knowledge during their time at a company, which is important because reading code is not as easy as reading a book. New engineers take time to get fully up to speed.
In 1980 I read in a newspaper that software developers would be extinct by year 2000. Probably something that could be extrapolated from the Maya calendar or Nostradamus or something.
People have been predicting the demise of programmers since the invention of COBOL. That’s a long time ago, for you youngsters.
Business people are taught to believe everyone but themselves are expendable. What we often ignore is that making people expendable requires code… the very people we wish not to be dependent on.
I wish business and engineering folks had a more symbiotic relationship, because the truth is, when business and engineers are on the same page and have mutual respect for the value the other brings, companies become unstoppable.
I stopped laughing awhile ago, because the joke is so old that it stopped being funny a long time ago. I personally saw several iterations of software companies coming up with programmer replacement tools, and many bean counters actually bought into it and spent $billions. One can go through the glossary of dead buried developer replacement tools and take your pick, but most laymen probably heard of program generators and 4GL. None of them even came close to achieving their stated goal, and all are 6-feet under now. The most laughable part is that COBOL, the original human understandable programming language is still being used today. So, I say to those “visionaries” not to bother, but just keep using COBOL if replacing the programmers is your inspiration.
I heard this exact same claim 25 years ago from 4 Harvard grads (who were hiring myself and three of my colleagues to develop a product) who said XML would making coding obsolete.
I would love to watch a product manager attempt to use a tool like co-pilot to write code himself…on any sizable codebase, it would take ten developers ten years each to unravel the mess that individual would make per 10k lines of code he “produced”.
Take a hard look at Elon Musk
Not only can he code
He can imagine new modes of transportation
He can imagine new ways to recover rocket boosters
He can imagine new applications to compensate people for their labors
Egomaniacal Software Engineers need to be exited from the profession
Software Engineers who can use their coding and enterprise-architect skillsets to address a new market…are worth their weight in GOLD
Being a programmer who has tried “low code solutions” they are nothing like custom-made solutions by a developer. And even with low-code solutions, you still need to employ a lot of the same type of reasoning and skills that a programmer would or you’re going to come out with a crappy end result for all but the simplest automations. Even if it were the case that people think programmers will automate themselves out of a job (not something I foresee and if you understand programming, you see it too) but even if they would, this is VERY far in the future and not something I’ll be worrying about at night 🙂
I’m a software developer. However, I disagree with this. When artificial general intelligence arrives, it could in principle take the role of the engineer away from a human.
I’m aware of the comic strip jokes about this, but I feel they miss an important point. I’m not talking about there being an even higher level language that somehow simplifies the source code beyond what would be possible. You can make it as simple as possible, but not any simpler.
Consider a freelance engineer. Their job is to listen to the needs to the client, and fill in the gaps in their vague and informal specification, and to understand the clients needs in a way the client themselves cannot, to facilitate the development of a formal specification (the code itself), and its technical implementation.
The engineer chooses appropriate algorithms, researches appropriate technologies, and instruments the production of the software on behalf of their client.
I can’t see a reason why a generally intelligent machine could not fulfil the same role – we ourselves are probably just quasi-generally intelligent automatons. In this sense, the “even higher level language” is the system of inference the AI is using to be able to produce the complete and formal specification.
Of course, without proper AI, you can’t do this sort of thing properly. However, I think it’s a mistake to discount the possibility.
Probably, this is a very long way off into the future. There will surely still be people writing code for the fun of it. However, once the responsibility of a developer can be delegated to an AI, it makes for a good business case to use it. Possibly, the logical end of this technology is a self-sustaining system of machines that mine material, assemble factories, construct tools, and produce products – while repairing each other in the case of failures.
So keep on laughing for now, but probably you won’t have the last laugh. Hopefully, maybe idealistically, the last laugh will be shared between us all.
What you’re missing is that we don’t even know what we don’t know about AGI yet. We’re barely closer to AGI than we’ve been for the past fifty years.
There’s another thing too: Programming is one of the harder human endeavors. The very first AGI may not even be much more capable than an average human with an integrated mind reading calculator. There’s no guarantee that it will immediately be smarter than a human. But it would be able to do menial jobs that still need a human, assuming its hardware can be made to be cheap enough. (Say it requires some new kind of chip with quantum properties.)
As it learns more it will be able to do harder and harder jobs.
So effectively every other job will be able to be done by an AGI before an AGI will be able to do the job of a human.
Meaning that if cheap AGI becomes a thing, humans will either be killed off a la Terminator or put on some kind of UBI well before software engineers lose their jobs to computers. If AGI stays perpetually expensive, though, then you’ll just have new AGI “people” joining the workforce in small numbers.
Artificial intelligence doesn’t have intuition and also can’t find relations between processes unless those are very obvious and have obvious pattern. Human brain is hard to simulate because we still don’t know everything about it and even if we would do, it would be to complex to make simulation of it.
My favorite tool for creating blog content about tiny topics is the Jasper AI blog writer.
Get 20% off Google Workspace (Google Meet) Business Plan (AMERICAS): M9HNXHX3WC9H7YE (Email us for more)
Get 20% off Google Google Workspace (Google Meet) Standard Plan with the following codes: 96DRHDRA9J7GTN6 (Email us for more))
We know you like Sports and Geeky things, We do too, but you should build the skills that’ll drive your career into six figures. Cloud skills and certifications can be just the thing you need to make the move into cloud or to level up and advance your career. 85% of hiring managers say cloud certifications make a candidate more attractive.
Download the Djamga App for ios or android or Microsoft for drop in soccer, basketball, volleyball, badminton, football, hockey, cricket games details and location in your city.
List of Freely available programming books - What is the single most influential book every Programmers should read
- Bjarne Stroustrup - The C++ Programming Language
- Brian W. Kernighan, Rob Pike - The Practice of Programming
- Donald Knuth - The Art of Computer Programming
- Ellen Ullman - Close to the Machine
- Ellis Horowitz - Fundamentals of Computer Algorithms
- Eric Raymond - The Art of Unix Programming
- Gerald M. Weinberg - The Psychology of Computer Programming
- James Gosling - The Java Programming Language
- Joel Spolsky - The Best Software Writing I
- Keith Curtis - After the Software Wars
- Richard M. Stallman - Free Software, Free Society
- Richard P. Gabriel - Patterns of Software
- Richard P. Gabriel - Innovation Happens Elsewhere
- Code Complete (2nd edition) by Steve McConnell
- The Pragmatic Programmer
- Structure and Interpretation of Computer Programs
- The C Programming Language by Kernighan and Ritchie
- Introduction to Algorithms by Cormen, Leiserson, Rivest & Stein
- Design Patterns by the Gang of Four
- Refactoring: Improving the Design of Existing Code
- The Mythical Man Month
- The Art of Computer Programming by Donald Knuth
- Compilers: Principles, Techniques and Tools by Alfred V. Aho, Ravi Sethi and Jeffrey D. Ullman
- Gödel, Escher, Bach by Douglas Hofstadter
- Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin
- Effective C++
- More Effective C++
- CODE by Charles Petzold
- Programming Pearls by Jon Bentley
- Working Effectively with Legacy Code by Michael C. Feathers
- Peopleware by Demarco and Lister
- Coders at Work by Peter Seibel
- Surely You're Joking, Mr. Feynman!
- Effective Java 2nd edition
- Patterns of Enterprise Application Architecture by Martin Fowler
- The Little Schemer
- The Seasoned Schemer
- Why's (Poignant) Guide to Ruby
- The Inmates Are Running The Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity
- The Art of Unix Programming
- Test-Driven Development: By Example by Kent Beck
- Practices of an Agile Developer
- Don't Make Me Think
- Agile Software Development, Principles, Patterns, and Practices by Robert C. Martin
- Domain Driven Designs by Eric Evans
- The Design of Everyday Things by Donald Norman
- Modern C++ Design by Andrei Alexandrescu
- Best Software Writing I by Joel Spolsky
- The Practice of Programming by Kernighan and Pike
- Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt
- Software Estimation: Demystifying the Black Art by Steve McConnel
- The Passionate Programmer (My Job Went To India) by Chad Fowler
- Hackers: Heroes of the Computer Revolution
- Algorithms + Data Structures = Programs
- Writing Solid Code
- Getting Real by 37 Signals
- Foundations of Programming by Karl Seguin
- Computer Graphics: Principles and Practice in C (2nd Edition)
- Thinking in Java by Bruce Eckel
- The Elements of Computing Systems
- Refactoring to Patterns by Joshua Kerievsky
- Modern Operating Systems by Andrew S. Tanenbaum
- The Annotated Turing
- Things That Make Us Smart by Donald Norman
- The Timeless Way of Building by Christopher Alexander
- The Deadline: A Novel About Project Management by Tom DeMarco
- The C++ Programming Language (3rd edition) by Stroustrup
- Patterns of Enterprise Application Architecture
- Computer Systems - A Programmer's Perspective
- Agile Principles, Patterns, and Practices in C# by Robert C. Martin
- Growing Object-Oriented Software, Guided by Tests
- Framework Design Guidelines by Brad Abrams
- Object Thinking by Dr. David West
- Advanced Programming in the UNIX Environment by W. Richard Stevens
- Hackers and Painters: Big Ideas from the Computer Age
- The Soul of a New Machine by Tracy Kidder
- CLR via C# by Jeffrey Richter
- The Timeless Way of Building by Christopher Alexander
- Design Patterns in C# by Steve Metsker
- Alice in Wonderland by Lewis Carol
- Zen and the Art of Motorcycle Maintenance by Robert M. Pirsig
- About Face - The Essentials of Interaction Design
- Here Comes Everybody: The Power of Organizing Without Organizations by Clay Shirky
- The Tao of Programming
- Computational Beauty of Nature
- Writing Solid Code by Steve Maguire
- Philip and Alex's Guide to Web Publishing
- Object-Oriented Analysis and Design with Applications by Grady Booch
- Effective Java by Joshua Bloch
- Computability by N. J. Cutland
- Masterminds of Programming
- The Tao Te Ching
- The Productive Programmer
- The Art of Deception by Kevin Mitnick
- The Career Programmer: Guerilla Tactics for an Imperfect World by Christopher Duncan
- Paradigms of Artificial Intelligence Programming: Case studies in Common Lisp
- Masters of Doom
- Pragmatic Unit Testing in C# with NUnit by Andy Hunt and Dave Thomas with Matt Hargett
- How To Solve It by George Polya
- The Alchemist by Paulo Coelho
- Smalltalk-80: The Language and its Implementation
- Writing Secure Code (2nd Edition) by Michael Howard
- Introduction to Functional Programming by Philip Wadler and Richard Bird
- No Bugs! by David Thielen
- Rework by Jason Freid and DHH
- JUnit in Action