I did assembly on 8080 chipsets as part of uni studies about 20+ years ago. Essentially programming at the register level.
Generally software design has evolved to the level of mechanical engineering did some 150 years ago. Instead of going and building your own toolset and building a steam engine from scratch, tools became standardised, parts became modular and things became easier to build and deploy quicker.
Software design is now far more modular and it is about knowing which parts of a library to use to implement a solution... for a lot of developers. There is more overhead for doing it this way. So if you have a lot of time and ability you can make something leaner.
Those who are going down to the lowest levels are generally the ones creating the software to directly interact with the hardware. Definitely some of the most hardcore engineers left.
Bookmarks