3

In one another comment here on DevOps SE we read:

"Why a chef is the boss of the kitchen but a fullstack dev is not often the leader of a dev team, that's a question for another day"

So given the assumptions contained here are correct, why is so? Are we yet not there in terms of overall improvement and progress or is this economically nonsense (or, assumptions not correct)?

1
  • 1
    I think is a a vague question, and the assumptions are tough to tease out. Who's to say that a fullstack dev is not often the leader? What do you mean by boss? Commented Nov 20, 2017 at 17:42

3 Answers 3

9

IMHO the comment is a bit misleading, in the sense that a chef is the boss of the kitchen mixes up and/or attempts to compare the unique leader/chef role (in French, chef literally means chief/boss/leader) with the expertise required to fill that role. By contrast, the full-stack developer is just an expertise, it is not a unique role.

If I'm not mistaken to become a chef one has to have experience in every other position in the kitchen. Similarly, a full-stack developer's expertise covers frontend, backend, etc - every other more specialized expertise required for the team's product. Which is probably the starting point for the comparison in the comment.

As I mentioned in my answer to that post, scale matters.

In a large team, the requirement for the leadership position isn't necessarily the technical expertise. Which is why often in software development the team leadership's role is a management position, not a technical one. Clear labour division example, if you want.

It's not impossible to even have multiple persons qualified to fill the chef role in the same kitchen, but only one can actually fill that position at any time, a chef in this context really refers to the role, not to the expertise. Also - there may be many types of chefs in a kitchen, see, for example Chef Jobs on Cruise Liners :)

But in a small resource-starved team where the team leader has to be selected from between the only full-stack developer and one or more less-experienced ones - probably the full-stack developer will be the leader, just like the only person qualified to be a chef in a small kitchen.

4

The quote is misleading since there is not "a" chef in the kitchen. There are many different chefs, i.e. pantry chef, soup chef, fish chef etc. Wikipedia lists many others.

What the quote is thinking of is the "chef de cuisine", which is the overall manager of the kitchen, the CEO if you will. There is also the whole executive hierarchy we know from our IT companies, e.g. sous-chef (second in command), commis chefs (department manager) etc.

So, your fullstack dev is first and foremost a someone who can cook well. But even if you cook the greatest delicacies, that does not make you a good manager. On the contrary, there are people who are actually trained to be managers/leaders. The skillset, and daily work, of managing the logistics of a large kitchen is vastly different from the cooking itself.

Instead, a fullstack dev specializing in AWS, Azure, CI/CD, "xxx as code" or any of the other tools that we associate with DevOps, would be comparable to a soup chef specializing in soup or a fish chef specializing in fish (with no managerial tasks attached to the job description).

And finally, remember that in IT, "Agile" is all about removing leadership from the immediate development process and placing leadership where it can do good: enabling the devs to do their work. For that, they do not need to know that much about software development, or be a great dev themselves.

2

Firstly, because leadership is not very much to do with any particular technology, but about having a deep understanding of the problem that the team is writing software to solve, and about having great interpersonal skills: mentoring, conflict resolution, self-awareness... A person who thinks it is about technical ability alone lacks at least one of those.

Secondly, let's be honest - the vast majority of "full stack" developers really only know JavaScript, and even then, only in the context of applying a pre-written framework to a well known problem, like an intranet or a shopping cart. A person who is seasoned in C++, or the major RDBMS's, or similar traditional skills will not find this impressive and will not take leadership from someone who believes that they are a master of all skills in the stack - unless that person swallows their ego and adopts a more realistic title.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.