What is software and what is software engineering?And although it is not essential to have a degree in software engineering, you will need some combination of technical skills, coding or programming prowess and other soft skills to pursue a career in software engineering.Writing software has evolved into a profession concerned with how best to maximize the quality of software and of how to create it. Quality can refer to how maintainable software is, to its stability, speed, usability, testability, readability, size, cost, security, and number of flaws or "bugs", as well as to less measurable qualities like elegance, conciseness, and customer satisfaction, among many other attributes. How best to create high quality software is a separate and controversial problem covering software design principles, so-called "best practices" for writing code, as well as broader management issues such as optimal team size, process, how best to deliver software on time and as quickly as possible, work-place "culture", hiring practices, and so forth.Show those as links: https://bootcamp.ce.arizona.edu/blog/programmer-vs-software-engineer-whats-the-differ ence/ https://www.tutorialspoint.com/software_engineering/software_engineering_overview.ht m https://careerkarma.com/blog/software-engineer-vs-programmer When and for what did this major appear?Coding boot-camp website Coding Dojo says the five of the most in-demand programming languages are: o Java o Python o C#/.Net o Mean o Ruby The good news is these skills can be acquired through online courses or tutorials that teach programming languages, says Christine Julien, software engineering professor at the University of Texas at Austin Software Development Software development entails being able to analyze users' needs and then design, test, and develop software to meet those needs.Object-oriented design encompasses four key principles: o Abstraction o Encapsulation o Inheritance o Polymorphism If these sound like foreign concepts to you, don't worry--online courses through platforms like Coursera and Udemy can equip you with basic knowledge of OOD principles Software Testing and Debugging Software testing and debugging require you to think analytically about how a system is put together.Software Engineers need a rare combination of technical skills and soft skills to thrive, as Software Engineer skills include both the computer programming expertise needed to design, develop, test and debug software and the soft skills to navigate communication with company leadership, team members and other stakeholders.Software developers collaborate with clients on a smaller scale, like ensuring a particular design is functional and in line with the client's vision Software engineers rely on scientific and mathematical protocols to analyze problems and create technological solutions.Software developer jobs are projected to increase by a whopping 22% over the next decade Object-Oriented Design (OOD) The process of planning a system of interacting objects for the purpose of solving a software problem.Engineering on the other hand, is all about developing products, using well-defined, scientific principles and methods.