Second, there is the "pedestrian detection system". This is a radar-based long-range detection system used when driving in the city (for auto alerting the diver and/or auto-breaking if a child runs out in the street, for example).
In order to do self-parking, only the parking assistance hardware is involved. The parking assstance avoids all obstacles, and of course it would never automatically move the car if it detected an obstacle. The pedestrian radar is an optional package simply because the hardware is still quite expensive. Of course there will always be optional extras on cars. Volvo is probabl class leading when it comes to having the safety features made standard as soon as possible, but this piece of kit is just too expensive yet
So: 1) Volvo does not "charge extra" for enabling some feature on hardware already included. 2) There is no "pedestrian detection" that can be enabled or disabled that relates to parking
- - Structured programming.
- - Programming paradigms and their differences and benefits (functional/procedural/declarative/imperative/object oriented), how to choose language/paradigm depending on problem, and useful patterns and strategies for each.
- - Type systems (weak/strong/dynamic/strict). Drawbacks and benefits
- - Basic development methodology (version control, testing, error handling, debugging, ALM, documentation).
- - "Data structures and algorithms" i.e. basic discrete math, complexity theory, data structures and their algorithms.
- - Some low level knowledge: basic understanding of how a computer works, how memory/cache/file systems and OS:es work. What's two's complement? What's epsilon for IEEE 32 bit floats?
- - Basic computer security, encryption and hashing.
I think databases, "The unix philosophy" etc. are more controversial and should not be on the essential shortlist.