|
One of the largest problems in the industry is that they are looking (job ads) for CS, hiring programmers, but actually often need software engineers. And the second problem is that they often don't understand the first sentence. CS was never meant to be a programming degree. There are universities that don't have programming in their CS curriculum at all (well, except for pseudo-code or the like). It's a scientific degree. It's an education that teaches you how to solve problems in the Computing in a reliable, mathematical, scientific way. They solve abstract problems. Software engineers, on the other hand, solve concrete problems, but also without much code. They design a solution with respect to the requirements, technical constraints, price, available resources etc. They shape the development process. Programmers write code. Ideally they do know the infrastructure they're working with (compilers, libraries, frameworks, hardware, ...) and write the most optimal code in the frame, defined by an engineer, and using solutions developed by a scientist. At least this is how it should be. And there are some companies that really working like this - usually the ones that have to have really good software working for decades. Other (nowadays the majority) hire physicists or the like for everything. I had the chance to work for some of these companies too - one of them hired basically everyone with some mathematical background to do coding - and they coded. They created one of the largest code bases on the planet (larger than e.g. Microsoft's at that time). They never learned how to get requirements from the customers, so their software was an absolute desaster in terms of usability. It is also extremely slow - jokes about its start-up times were pretty widespread a couple of years ago. And it was absolutely unmaintainable, to a degree that the company was on the verge of bankruptcy because they were basically not able to react to customer requests. They survived. But they are not hiring physicists to do software development anymore. |