I have been in software development for last 20 years involved with various activities like programming, training, consulting, team building, career development, etc
I started my career as a programmer in 1984. In those days, programming or software development as a profession was not common in this part of the world. When a commoner enquires about my professions, the closest thing that they could relate is to is Television and the only technical person they come across is a mechanic ... closest analogy for me those days was TV software like News, Soap Operas etc.
We were using computers Cyber 170/730 and NEC 1000/20D for programming, languages were FORTRAN & COBOL and software development was for internal use for data processing & report generation.
IBM PCs with MS-DOS started replacing mainframes in our work environments also by late 80s. Consequently, moved to using & developing PC based softwares. By early & mid 90s, we were into the bandwagon of networking, internet, hypertext, web, OO, Java & multimedia.
With the revolution in computing around the corner, consequent growth in complexity was obvious and it was clear that the ad hoc approach to software development would not suffice. By early 90s, I had started evangelising & practising software engineering practices and, by mid-90s, training & consulting as well.
Through Dot-Com days and past Dot-Com burst, I continue to practise, evangelise, and train & consult on software engineering practices. Key to success so far has been due to emphathetic listening & close working with the customer, planned working & close monitoring and working with the right people & building good relationships