So, what's the title for a person with 43 years of experience programming computers - not just GUIs, applications, or programs, but whole systems, comprising tens or hundreds of thousands of lines of code across several platforms and languages, and that often include writing specs, designing protocols, drawing UML sequence diagrams and state machine diagrams, memory maps, writing documentation, assembly procedures, and sometimes marketing materials?<p>How about when my work includes reading datasheets and writing low-level drivers, designing and implementing bootloaders, designing schematics, laying out PCBs and ordering PCBs, and then soldering together the prototype boards I designed, and testing my code not just with IDEs and debuggers but with voltmeters and oscilloscopes and logic analyzers?<p>Serious question -- I don't actually have an engineering degree and so agree that I'm not qualified to use the title "Engineer." But what's the job title that conveys what I do?