4 ms·
I really like this view. But any time I have suggested something similar (I think I might draw a different separation point between programmers/engineers in the
by throwaway17_17 4y ago
I really like this view. But any time I have suggested something similar (I think I might draw a different separation point between programmers/engineers in the general case), I have been accused of gate keeping.
The argument against is often phrased in such a way that enforcing, or even defining, separate ‘professions’ for individuals in software careers and those professions having differing requirements, is seen as a morally negative stance on its face. As a particularized example, one of the frequent arguments would be that a hierarchical structure would inevitably emerge among people potentially working on the same application. This argument is predicated on this stratification being inherently bad.
I think the push back on separating roles like you propose would be instant and vitriolic. I got slammed hard for saying that a person who had no concern or any interest in how data structures in a given application were implemented should not be hired as a ‘system programming’ dev.
I absolutely think you are correct at the theoretical level, but practical implementation of the idea is almost a non-starter.
- HidyBush 4y agoFor some obtuse reason people think software is some ethereal magic abstraction that somehow doesn't follow any rules or practices. We have to start pushing for the fact that yes, to engineer software you need a true engineer just like to engineer a house you need a true engineer. Nobody ever laments the fact that it's clear that basic construction workers could never engineer a building following all the best practices and regulations (and most importantly, know the pertinent laws of physics in detail). And yet we give basic programmers tasks such as developing a scheduler, a traffic management system and whatnot. I want programmers to have the right responsibilities and the right expectations, I want regulated proven industry standards that we can follow and I want software to suck less
- emteycz 4y agoYour whole argument breaks down when it is me - a "completely unqualified", uneducated person, but also a programmer since I was 6 y/o - who has to teach people with university diplomas how to do it correctly. Happens at every job I ever had. Overall, university diploma means absolutely nothing to me - sometimes it's a minus (because it sometimes grows a specific attitude that has no place in my teams). The only working indicator is time spent doing the job + personal interview.
- rout39574 4y agoThe problem I see with this plan is that the state of the art in CS moves profoundly faster than the pace of careers, certifications, curriculum development, &c. Imagine, if you will, the practices that would have been taught to the "By the book" computer engineers who graduated in 2000. Would you think it happy to have those practices dominant, by regulation, today? Would you want to have the task of lobbying the professional standards committees to update the curriculum so that a decade from now the thing you think is important would be accepted practice? I think that the difficulty we have updating e.g. language versions or crypto practices is a good model for how well our field responds when we do things more formally. Imagine how long python 2 would be around if it had been the basis for professional credentials for decades!
- ghaff 4y agoIt's actually quite common in other areas of engineering where you have engineers (typically with four year engineering degrees) and technicians (who typically don't). And, yes, you have very good technicians and not so good engineers--but it's not easy or particularly routine for technicians to transition to an engineering job. That said, there is probably not such a gap between a programmer and a computer scientist--especially in terms of the skills needed for most software jobs.
- joe_g_young 4y agoPerhaps the size of the company could dictate the size and scope of work. With a small company, one person would bear responsibility for everything. Whereas within a larger corporation, the responsibility is spread amongst a cohort of people who then can focus on a subset of skills.