Trends Or Not Trends In Software Development

This page is for a ThreadMode discussion on the existence or non-existence of various trends in SoftwareDevelopment. This discussion was moved from ConceptualIntegrity.


Do Executives prefer Engineers that are Drones?

In wonder if there is a trend away from architecture and the role of an architect (or design-team). I sometimes also wonder if there isn't a trend away from attempting to achieve perfection, elegance, and innovation and towards GoodEnoughSoftware. This seems very sad and reflects the lowbrowification of software development resulting from the drammatic increase in the economic stakes of software. I don't hear about commercial software start-ups spending time, money, and human-resources on Research than I did 10-12 years ago. Maybe this is because I've become more advanced and am not as easily impressed. I dunno. It does seem that many programming teams are being pushed to run like a factory of seamstresses where management of the factory is the only opportunity for vertical advancement. Less and less companies make a distinction between engineers of varying experience unless it is to groom that engineer for a move into management.

Rarely does a company offer the serious engineer or software designer a path for advancement other than management (usually through the Development Manager position). Has anyone ever seen similar trends? More and more, I have heard of sales or marketing departments being valued over engineering departments. Where engineers simply 'sew' together the grand and lucrative visions of marketing. Has anyone ever witnessed anything like this? I do know of commercial software companies that deal in technology but do not include their designers and leads in strategic meetings. Rather, they just design what was decided at strategy meetings. If this is a trend, I believe is will reduce the ConceptualIntegrity of software. After all, (according to Yourdon) the current generation of Product Managers see GoodEnoughSoftware as a reasonable alternative to Knuth's goal of BugFreeSoftware (more suitably called PerfectableSoftware)!

--RobertDiFalco


Less and less companies make a distinction between engineers of varying experience unless it is to groom someone for Development Manager.

What evidence can you present to support this claim?

Some of my recent consulting experience points to this. Maybe it is not just a recent phenomena but I never encountered before the last few years. I wonder if there are still at Tektronix like the original TecLabs? team who are doing the same sort of work relative to the advances in software over the last decade? It seems like fewer companies are doing research that isn't directly tied to a near-term product in the Marketing Roadmap. A lot of work jobbed out overseas views these engineers as assembly line workers. I have seen other shops with no other division than Engineers, Team Leads, and the Development Manager.


What evidence can you present to support this claim...

Honestly? Is it your opinion that most small to medium sized commercial software shops (or even large companies with internal development teams) provide engineers with non-management career path? While this is certainly true for very large companies like Sun or Microsoft or even smaller technology driven companies, they are not in the majority. While I am very fortunate to work for a company that respects its technical talent, most of the start-ups, medium sized companies, dot-com's, or IS shops where most of my friends have worked seem to provide no where else for an engineer to aspire to after Technical Lead or Project Architect than into management, usually as a Dev Manager. What I hear is that the norm is to either go into management, become a pundit or guru, or start your own company. I've heard many of my friends, (all are excellent engineers) tell me they feel as if they are viewed as mere implementors or factory workers with the real praise going to either Sales or Marketing. This is what I have heard. What do you hear? --RobertDiFalco


I was challenging you on the "Less and less" part. You were claiming a trend away from having a single architect (and later switching to the claim that companies are trending away from making distinctions between engineers), yet supplied no supporting evidence. You've since added anecdotes, none of which support either claim. I suspect that you might have some evidence of trends, and would like to hear it. Hence the overly succinct challenge.

My personal experience (20 years in Silicon Valley, mostly in startups with a few larger exceptions) is that neither claim is supportable. In the projects I've observed or know of through friends, I see no more or less reliance on a single architect now than I did 5, 10, or 15 years ago. And I see little change in vertical growth opportunities. Ten or twenty years ago it was true that at some point past project leader or group manager, you had to cut back on direct technical contribution in order to spend more time in meetings. That hasn't changed. If anything, advances in tools have improved that situation. (It's a lot easier now to sneak in a bit of editing and a compile between meetings.) What has changed is the richness of horizontal opportunities. There are many more areas of technology to move into now than there were 10 or 20 years ago. --DaveSmith


I don't really know what evidence I can provide other than my own personal experience (only 12 to your 20 years), what I have read, or what I have heard from most of the young engineers I come in contact with. Maybe when I get to the 20 year mark I will also think that nothing has changed and see this as yet more alarmist banter. Remember, this is just an opinion and not a fact.

Just so we are clear on my intent, I was not pointing out a trend away form a single architect, but that that one that de-emphasizes architecture and the function of an architect role. This role could be as easily assumed by a single person as it could by a small group of individuals -- it doesn't really matter.

Actually, I've even heard (seems like more and more) of companies where the engineers have little to do with the overall software-design and simply implement software that is designed by one or more representatives from product marketing (who don't even bother to interface with the existing user-base)!! It's hard to tell if this is belly aching on their part of indicative of a real trend towards software snake oil -- where the marketing is more important than the innovation. One of the very cool things about XP (IMHO), is that it puts control back into the developers hands while placing the emphasis squarely on the customer.

I suppose I also went off a bit on my feeling that, for a Senior Engineer, there seems to be little room for vertical advancement other than into management. While I have seen plenty of Technical or Team Leads that program (after all, these are usually the most Senior Engineers), I haven't seen a Development Manager that writes code for a long long time.

While I don't think I ever made any statements about horizontal opportunities, I definitely agree with you that horizontal opportunities are growing. However, I'm a little surprised that you think the startups of 20 years ago are so similar to the highly-valued, IPO directed, commercial software start-ups of today. I think several respected authors (much more knowledgeable than myself) have written extensively about how the software game has changed over the years, the de-emphasis on quality in favor of time-to-market, and so on. Some have even suggested that the engineers of the technical age will become analogous to the factory workers of the industrial age. In fact, there was a very funny movie that hinted at this theme (programmers as mindless, stunted, and frustrated factory workers), but I can't currently remember the title.

Finally, let me say that I am very glad these are not your experiences. I also consider myself lucky that I work in an environment that values good engineering, design, and quality and that does not run from innovation. I also want to make it clear that, generally, I don't particularly think that the move from Technically Driven to Marketing Driven software companies is a bad thing. However, I would mind seeing this toned down from Marketing Driven to Market Driven. --RobertDiFalco


See also: BorgificationOfEngineering, PlugCompatibleInterchangeableEngineers CodeVsArchitecture


EditText of this page (last edited March 2, 2006) or FindPage with title or text search