I’ve worked in games for twenty years and can safely say there are way more generalists today than there have ever been. Better tools and more awareness simply mean there are way more people making games. Even within large game teams you’ll also find loads of generalists.
The issue has never been a lack but that the industry itself crushes you into a box and insists you don’t exist. I’ve sat in meetings where generalists are described as unicorns. There is usually zero organisational impetus to utilise people’s abilities outside of their job spec. There aren’t a lack of generalists, organisations are just blind to their existence and have no understanding of how to use them.
As a consequence I’ve always looked for opportunities that let me be a generalist, working on prototyping teams, startups that need you to muck in and now leading a team of generalists making games. Quite a few of my team came from other industry jobs doing something specialised because of what we offered.
I think Tim’s diagnosis of the issue is correct for larger teams, generalists provide glue, shortcuts and important cross-cutting expertise. It’s just the actual problem is larger teams are also terrible at finding and integrating generalists because it’s anti-thetical to their working model.
> There aren’t a lack of generalists, organizations are just blind to their existence and have no understanding of how to use them.
A generalist is a threat to the organization as a concept.
Organizations rely on power and information flowing in well defined ways. Information flows up, control flows down. A generalist might disrupt that by passing information and instructions sideways. Which is why, no matter how often leaders go on about cross team working and matrix organizations, things tend to revert to micromanagement every time.
In usual business environments, generalists are usually not very valued either, but in indirect ways: it's easier to ask for better conditions if you can boast having unique skills or be strong in a specific niche, and a true "generalist" will be expected to move to a management or facilitator role, which makes them regress their technical abilities to some amount, which in turn pushes them to further move down that career path (or out of the company if they want to regain a technical role).
I find it fascinating that the gaming industry is faced with similar issues with generalists, where I was expecting a lot more pragmatic choices and better paths for individual contributors even if they're not ultra specialized.
Internally big game teams are pretty indistinguishable from any other larger tech team in how they operate in the large. There’s quite a bit of cross-pollination between the two as well and the whole is driven by wider business culture anyway. In my experience that ends up in being very process rather than results led which is definitely ends up with some perverse incentives.
>I find it fascinating that the gaming industry is faced with similar issues with generalists, where I was expecting a lot more pragmatic choices and better paths for individual contributors even if they're not ultra specialized.
It's a similar solution to other tech: generalists aren't vauled as much at huge studios, but they thrive in smaller studios. So the "exit plan" for a generalist involves hitting the ground floor early on an up and coming studio and getting a significant stake in a successful release.
And like those unicorns, those new studios are a huge risk. But hey, at least these days you have a huge rabid fanbase of hardcore gamers who will foam over each PR release as long as you do some form of advertising.
Ive noticed this too. A practical side effect is that most bugs in business context seem to emerge in "no man's land" areas of responsibility - e.g. not in the kubernetes system run by the kubernetes expert and not in the backend service built by the backend engineer but due to subtle interactions between the two.
Sometimes the intersection point issues are due to a breakdown in communication between the two experts but sometimes its due to a lack of knowledge overlap - i.e. the lack of a generalist on either side of the divide.
I would go further and say that most companies would prefer to solve issues via specializing instead of generalizing. For example, if there is a quality problem most products would hire someone with QA experience or create a QA team instead of increasing general QA competence. It's just a more tangible solution, even if not always the best one.
It goes both ways, unfortunately - generalizing makes costs disappear, so to beancounters it looks like savings. Like e.g. having each employee responsible for correctly filling in their expenses into some SAP endpoint, under threat of several negative consequences if anything is wrong, should a random audit find out, lets the company reduce the financial side headcount. Less salaries to pay is legible savings. The overall drop of productivity as everyone else has to do extra job is not legible, so it isn't accounted for, and then people talk in surprise about cost diseases and productivity increases not keeping up with pace of advancement, etc.
makes sense from that structure. Dev is already busy with one job, they won't get a raise to also get some QA learning on the side. So there's in fact negative incentive to pick up more responsibility, even if that dev does in fact know QA (unless you own stock in the studio. But that's still a stretch).
This was pretty much my take too. I'm not in the game industry, but it seems to me there are plenty of generalists. Only they don't work on these massive AAA titles, but on smaller titles in smaller teams, or even on their own, because that's where you really need generalists, and where they are appreciated. The large projects always sound so corporate, structured, and compartimentalised, that it doesn't sound like there's room for generalists.
I think it's simply a choice made by these big title publishers. If you want more generalists, give them more freedom, more leading roles.
Mind you, I don't work in the industry, so I could easily be wrong, but this is my impression as an outsider.
I just got done reading Sid Meier's Memoir! He also touts the importance of being a generalist. You can have programming as your primary expertise, but you should have a bare minimal competence in both audio and graphics. On a number of occasions, he'd have a vision for one aspect of his game that the whole team was against, and the way he would convince them would be to make a working prototype of that feature. The audio/graphics would be poor, but they needed to be good enough to demonstrate it and have his team members play.
He could get underlings to execute on his vision, but he felt that if they didn't believe in it, they likely would put a lot less effort than he would.
While this was nice, I also especially like the sections where he realizes he was wrong to keep insisting on doing stuff himself, like when they finally get a dedicated artist and sound designer.
The two are unrelated. In the latter, he was referring to a dedicated artist/sound designer for the final product. In my comment, he is referring to building a quick prototype to show to the team. Once he's done that, the dedicated folks will make the actual final/production version based on his prototype.
The generalist's resume looks worse. They have 2 years experience with (insert role here), compared to the other guy who has 8, because they've worked in multiple roles.
Some industries have realized they want some people who have multiple skills, such as the "full stack engineer" roles, but it seems rather more common to prefer someone who precisely fits into the specialist role they defined.
I've been in the workforce for almost 40 years as an ICT professional. In my experience there's lots of other things going on in addition to the point you make.
People flat-out don't believe that the skills enumerated on my resume could be held by a single person, and are.
Apparently, I'm clearly "over the hill", having been at this for nearly 40 years. I should state that I have 20+ years experience instead, as-if having life experience doesn't actually make you better qualified to understand the contexts of any role in an organisation.
My skill-set is "threatening" to others, because, apparently, knowing things about a great many technologies means that I know more than the person hiring me, which somehow means that I'm a threat. As-if surrounding yourself by people who are smarter than you is suddenly undesirable.
I've been told to "dumb down" my resume because there's too much there, even if there's 99% chance that a computer will be the device actually reading it and selecting me. Apparently I'm supposed to "infiltrate" a company at a lower level and then "show" them that I can do more, despite 40 years experience showing that people only see the skills that they want to see.
According to some automated job technologies I have 104 years of experience. Not sure how that works.
Then there are those who want to know which of the experience is "professional" and which isn't. (I've been self-employed for the past 23+ years)
In the end, I liken it to this:
"How much experience do you have in eating food?"
"Do you mean, adding together each of the 15 minute meals, or how long have I been eating food for since I was born?"
"Okay, how much professional experience do you have eating food?"
I have a similar blessing/problem. I've filled forms that do the additions and keep you in check that you don't end up with 104 years. On the other hand, if you are anything like me you spend a good amount of these 40 years working 10-12 hours per day (and some times the weekend)(I remember in 2001-2003 I was working in a food company and during some weekends we would be doing the hardware work, so removing servers, installing new ones, setting up new racks etc. So those 3 years were in reality 4 or 4.5 (and I got the paid overtime to prove it).
The "system" still serves the ones who grow vertically Junior X, X, Senior X, Junior X Manager, X Manager, Senior X Manager, and so on. I remember listening to DOAC chatting with Harley Finkelstein of Shopify that was describing how he appreciates T-shaped skill-set. So you master skill X (as you 'grew up with it') but as time was going by you also developed other skills in parallel.
Modern companies & minds get it and celebrate it. Old-school-ers don't (and probably never will). There is also the thing "I want him/her to do X, so (e.g.) project management skills are not useful". And then I am happy when I hear this on an interview because I most definitely do NOT want to work with that person! :)
Hell, I experience this a lot. My experience is doing a lot of things, and being a force multiplier. However you go to a larger company, and suddenly they're looking for very specific experience doing specific scaling that I never got to do in all my roles, boom, it is terrible for my resume. And many young people see this and just decide that let's just focus on that, and make a great resume, rather than try to be useful.
I could have come into a job and say "okay, I know back end, let me focus on that" but instead I spent a day installing a shitty data pipeline that more or less took us through the next 4 years of data analytical needs for almost no cost. Etc.
It is just how it is. I even read a post on HN about a decade ago about how a guy was hire #1, was instrumental in the growth of a company, and when it was purchased was pushed out because they didn't need a generalist anymore, they needed a specialist. And so he decided to drop the generalist role and focus entirely on one technical aspect to the benefit of his career.
So while I agree with Tim, I also have to say, as someone in the thick of it, there's no good way out. Unless you want to keep working for Seed / Series A startups, fingers crossed they sell or you won't make that okay payoff.
This is why I dont work for anyone but my customers. There is no way I would deal with the kind of dissonance we are living through today. I do all my design work, my coding, my deduction for people that hire me directly for individual projects. I don't make as much money as I would working for a company, but you can't put a price on piece of mind.
From my experience it seems that there is more work in this space than there is people to do it. If you just tell people that you are open for individual contract type work, the business will roll in eventually.
Just give it some time and start by doing it on a part-time basis. It might take several months before you land your first project, but once you completed some work for some clients, more business will come if you are good.
You will know when you are ready to take your individual contracts full-time.
I didn't even do that. I just told people in my immediate vicinity that I am open to individual projects. One project came from my wife's ex-boss, one project came from a colleague who got a project via LinkedIn, but didn't want to take it himself.
You can just drop it in casual conversation.
"What do you do for a living?"
"Oh I'm a software developer at X-Corp, and I also do some work for individual clients"
Something like that. People remember that stuff. If you like, you can even tell people you offer a finder's fee. Just don't be pushy.
Be willing to build the business part-time until you have enough work to take it full-time.
You probably won't be getting big projects from the get go, but if you are humble, that won't be a problem. My first project was just optimizing and cleaning a slow and messy Python script. I charged $35 an hour an threw 10 hours into it.
I consider myself a generalist and companies just do not like to hire those. The vast majority of companies doesn't even advertise jobs that are not specialized. And of course this generates some kind of force on the market, because there is no incentive to become one and a strong incentive to specialize instead.
I tell you what, the Diablo 4 game is a perfect example of disjointedness that comes from pure specialists with little to no one who is a generalist that can bridge departments together in a way that makes for a better game and experience. And while they have made strides to implementing much of the community feedback for Season 2 many months later after much of the gamers have left, it isn't the same thing as having a leader who already gets the cross disciplinary shortcomings that resulted in such a poor end game that was out of touch and underwhelming. Something only a generalist leader with some authority, gaming experience, gaming systems and design, and passion could pull off.
I think Diablo 4 is really well made but I keep getting surprised by some goofs in what I would consider the most important parts of the game.
Like even when I make a small scale RPG, my damage formulas and scaling and so on are my bread and butter. I obsess over them. I would accept being wrong about the resulting experience and having to adjust, but to me it's really unacceptable to have oversights and mistakes there.
So something like how broken resistance was, or different types of scaling implemented wrong. That's not disagreeing about the outcome. That's clear oversight in what I consider the heart of the game.
Or for example how the mount's controls with mouse were just remapped from joystick and you have to put your mouse at the edge of the screen to go fast.
I don't understand how to reconcile such a big and well made game with many baffling oversights in the game's core systems. Feels competent and amateurish at the same time.
Usually games with deep development issues have those issues show up everywhere. Not so in Diablo 4.
The art direction is great, they produced a massive amount of assets at a very high quality, the story is great by Diablo standards, the marketing was good, the tech is pretty good.
The player experience is still very good and very high quality. I usually find the only people who complain are the hardcore players. It makes sense because once you've run out of campaign content, you really have to rely on those core mechanics to keep the game going.
A lot of the people involved are competent and have a good track record. I just don't understand why the foundations are shaky. They're not even innovating so much on what an ARPG is supposed to be.
I think many of us did enjoy Diablo 4 but the systems that make an ARPG shine fell through the cracks which is surprising given Blizzard defined the category.
I am very much am aware they aren't the same people running the show now from Blizzard North, and they had some major team shake ups in D4s dev cycle, so that was part of the problem but it's hard not to have high expectations.
It's just those pieces or connections in-between the excellent departmental work that fell apart, along with the foundation of an ARPG being flawed, that a gaming generalist could have solved to bring it all together.
I imagine things would look quite different now if that generalist person or persons on D4 played ARPGs for decades, had Diablo DNA infused in them with equal experience in game design and systems, and had some authority they could have made the best ARPG all over again since D2 given how good D4 is in so many ways. They equally learned a lot from D3 and it's shortcomings but that knowledge all felt lost in D4.
I feel like Chris Wilson's talk Designing Path of Exile to Be Played Forever is a great example of "a generalist leader with some authority, gaming experience, gaming systems and design, and passion": https://www.youtube.com/watch?v=tmuy9fyNUjY
I've listened to Chris and am a huge fan of his. The depth, experience, and love he puts into POE clearly demonstrates a generalist who gets it. Chris is a linchpin.
This is exactly the kind of people Blizzard lacks. They used to exist but they pushed out many of the generalists for the factory model of specialists and haven't really recovered since.
That doesn't mean they don't make decent games given the talent of the specialists in art and development, but the game design itself really requires a broader individual or group to bring it together.
In science something similar happened. There was a time where some people knew pretty much in every science field, chemistry, physics, biology etc. but the amount of knowledge grew and it become impossible to know enough in every field.
Maybe game development isn't any different. You either become an expert in on field or your knowledge is to superficial to actually help.
I'm a fella who has a smattering mix of - systems engineering, systems administration, network engineering and administration, database administration, software development, analog and digital communications systems design and administration (from the circuit level up), UI/UX design, process engineering, documentation, RF Engineering, project management, and a little bit of marketing.
The only thing I'm missing is the financial aspects of business, but from the technical, to the structural, to basically anything technology or people related - I know enough of it to step in and be competent in most situations.
To quote Heinlein "Specialization is for insects."
I love that Heinlein quote. To expand on it with a societal critique, it's not about working in a group; specialisation only works if you have an all-seeing all-powerful brain at the top that runs the entire show. A hive queen. Without a queen, the specialised insects die of starvation.
Some humans would find immense happiness trying to be the queen themselves. Others, to live like a cat. By themselves, with no one to tell them what to do. But our entire modern society is built upon and favours the busy, mindless drone. The education system shapes you like one, and isn't concerned to help you figure out your ideal place in the ecosystem.
Valheim [1] is one of an ever-increasing number of amazing games made by extremely small teams. It was initially made by one guy in his spare time, who later picked up a former coworker to come join him after getting quite far along. That game is arguably the single most technically challenging type of game to make: seamless and dynamic (time/weather/seasons) open world, player crafting/construction in a pseudo-voxel type system, multiplayer, dynamic skill based combat, and more. Even though I'm sure they've probably grown a bit since then, the overwhelming majority of everything was done by primarily 1 guy. So yeah, it's very possible to be a generalist.
Going in the other direction, the increasingly absurd size of companies is one thing I really just can't wrap my head around at all. The final output just doesn't seem to justify these massive teams and budgets when contrasted against vastly smaller projects, like Valheim.
What do you think most indies are? I'd consider most indies much more generalist. You can't ever know a whole field but you can know pieces of it and once you learn one system it can be easier to know another. I think for example programmers often make very good designers as they will think though problems, handle attention to detail, and work to often find multiple solutions if need be... Wait that sounds like every field doesn't it ;) code, art, design, sound etc.
The main issue is mindset, a programmer might cut short a design to save himself time, an artist might simplify the gameplay to not put in as much effort, and a musician or writer might not focus as much on the visuals because they get caught up in how it should it sound/read etc. But they certainly can take on other roles. If you have any experience with start-ups and indies or freelancing you might find yourself take over roles you didn't expect originally. On smaller teams this goes a lot further.
It’s rare that Indie games are the same technical sophistication though.
Nothing wrong with them at all but the scale is just totally different, it’s like running a small bakery shop vs an industrial factory churning out bread for supermarkets
Yes, of course there is a trade-off. The specialists are likely much better at executing their particular functions. However, they still compete for the same market, sometimes surprisingly well. AAA games constantly feel like an art gallery where you are there to appreciate the beauty, while indie games have this soul and cohesion that is likely boosted by generalists as described in the article.
too bad most souls end up lying around on the street, begging others to turn back and avoid the terrible fate befallen on them. It's always rough selling your vision to others, and games are no different in terms entrepreneurship.
The best design solutions are usually compromises, but when the trade-off crosses into different disciplines (e.g., mechanical vs electrical), it can get tricky.
At minimum, you need people who can even recognize when such trades exist. It's better if you can find translators: the rare person with enough expertise in relevant domains to get to get two teams to work together efficiently.
In my own career, I've often found it useful to pick up cross-discipline skills, at least enough basics to fill one of the above roles.
"If we all reacted the same way, we'd be predictable, and there's always more than one way to view a situation...It's simple: overspecialize, and you breed in weakness. It's slow death.”
> At minimum, you need people who can even recognize when such trades exist. It's better if you can find translators: the rare person with enough expertise in relevant domains to get to get two teams to work together efficiently.
These are actually at least three (likely four or more) areas of expertise: expertise in two domains, expertise to communicate well with both sides, and the expertise to "translate" from each side to the colleagues of the other one.
For example, while I do claim to have expertise in multiple areas, it - I claim exactly because of this reason - often happened in the past that both sides told me that I somehow do not speak "their" language, but what they claim to be the one of the other side. Also, I have a tendency to find "weird" connections between both areas that both sides have difficulties understanding. :-(
Look at Stardew Valley. One person (Eric Barone aka ConcernedApe) designed the game, wrote all the code (including the engine from scratch), designed all of the characters from concept sketches to final in-game art, wrote all the story and dialogue, created all of the sound effects, composed and recorded all the music with an original soundtrack of over one hundred pieces of music.
The game has since sold more than 20 million copies and some publications have called it the greatest game of all time. An indie game by one person!
He did not write the engine from scratch, he is using MonoGame a framework that takes care of graphics, audio and input:
https://www.monogame.net/showcase/
MonoGame is a rather shallow abstraction over DX9/10 era APIs, I don't think it's fair to say it "takes care" of much beyond wrapping some platform dependent code. The content pipeline in particular ranges from painful to unusable.
Not sure about game development, but it sounds like a specialist programmer could become a dabbling audio engineer or narrative writer if given the opportunity, or vice versa. Might be a management problem: on a team of ten, you can grab the writer (singular) for coffee and spend a couple of days designing and writing dialogue for a side quest yourself, but on a team of hundreds it must be a lot harder.
And then, once you've spend that time using the tools, you can refactor the SpeechOptionNode to incorporate skill checks without attaching a script, or whatever other obscure tooling problems the writers are dealing with.
> Is it even possible nowadays to be a generalist?
Stardew Valley guy did pretty much everything himself. Game design, programming, music, art.
Which, it's an indie game... but clearly if he can do the whole project himself, someone on a AAA team can have cross-disciplinary skills and translate.
I'm not sure it's a good example... Stardew Valley as a technical feat is pretty average, there's nothing fancy. In fact the game could have been made 20 years ago with this looks. Comparing it to AAA is really far from the truth, because modern 3D game dev is much much much more complicated.
I seriously respect his "average, nothing fancy" achievements. I'd feel really proud if I could do just a fraction of what these people do. Haven't managed to learn audio production tools yet. I suck at drawing so much I can barely draw stick figures. Hell I can barely write legible text with a pen, I'd be screwed without computers and printers. Yet there are people out there who are not only better programmers than me but also artists and musicians. Truly worthy of respect.
Yeah but is the game industry really better off having such complicated games? Some might say no. I'm finding that I have more fun and feel better about supporting indie games. Less shit I have to deal with from companies that don't have the same level of connection with their games.
I explicitly alluded to that: that it's indie and simpler.
> Which, it's an indie game... but clearly if he can do the whole project himself, someone on a AAA team can have cross-disciplinary skills and translate.
But if one man can do 100% of an indie game, surely you can end up with a few people who are generalists on a AAA game team that are deep in one area and basically competent in another couple to act as liasions.
>if he can do the whole project himself, someone on a AAA team can have cross-disciplinary skills and translate.
It's a scaling problem. Similar to how single theaded, multi-threading, and distributed computing all have different schemes to solve the same problem, so does a single/small team vs. a studio of hundreds of devs. You won't get a satisfactory output if you use a single threaded technique to solve a problem requiring distributed scale. You'll either take prohibitively long, and/or produce the wrong/redundant results as solutions clash into each other with no syncronization.
I think instead of trying to fit more generalists into a AAA pipeline, we should encourage more generalists to optimize for a small team and deliver leaner projects that can still turn heads.
It is a scaling problem, and scaling problems in teams are limited by communications costs.
Adding more edges, where artists can talk to programmers more directly and meaningfully without it happening through a mediated hierarchy, improve throughput.
Of course, having the ability for subteams to work together more effectively doesn't mean you should always use it or abandon trying to manage the project through normal means.
Stardew Valley is certainly impressive for a one-man project and a success, but hot take, it's not that good in the grand scheme of things. "Jack of all trades, master of none". You can't overcome physics and the human lifetime.
Certainly, one can be a jack of all trades, and certainly, there's value in being so, but you're giving up mastery which has its own value, and comparatively, having multiple specialists collaborate is better than having multiple generalists.
Possible, sure. Arguably required as an indie/small team. But if your aim is AA/AAA industry it's shooting yourself in the foot. Those industries seek deep specialists more than generalized knowledge. Maybe a director can benefit most, but you don't become a game director through that route. They promote that in-house.
On the indie side, a generalist indie needs less of what a big game needs. You probably don't need a graphics programmer at all for an indie game, for example.
In jobs that require a high level of expertise, you usually want to be both a specialist (to make you worth hiring) and a generalist (to be able to do what needs to be done). But it takes experience to get there. A lot of work in science and game development is done by relatively junior people, because both fields suffer from a high level of attrition. Those people can be specialists or generalists, but rarely both.
There is such a thing as too much specialization too, even in science. It can be helpful to get inspiration from knowledge of disparate fields. Things can come together with this cross-disciplinary approach. There's no one sized fits all answer to this.
I joined a large publisher with a specifically created hybrid role spanning two disciplines. I had it written in contract and title.
Within a year HR approached me to change it because “it confuses people”.
When asked who was confused, … they didn’t answer.
They came back every year with the same request until I left.
Once a certain size is hit in an organization, the org chat and job titles develop an inescapable gravitational pull that only very senior / unreasonably successful people can escape over time.
I spent 23+ years doing front end programming, server side programming, database design, sql writing, shell script writing, etc. Recently I was moved into an integration position that primarily used Apache nifi (a gui application) to tie systems together. It is very specialized and quite boring. No code writing required. It feels insane to move a generalist like myself into a specialist position, but they were sunsetting what I had been working on and this was what was open at my same level (at least on paper).
This observation doesn't only apply to games development, but also to software development in general, e.g. web apps. If every developer working on a project is specialized (DevOps, backend, frontend - even for frontend there are some that only specialize in HTML/CSS and some in JS), they tend to only concentrate on their domain and lose sight of the big picture of how the app should work (or never have that big picture at all), which hurts the quality of the finished product.
This is a pattern even in software industry itself. People specialise too early in their career, zooming closer and closer to a tree, knows everything about a leaf. Fewer and fewer people see the forest. A side effect of specialising is that the skill that you specialise in become a commodity. In the book Finite and Infinite Game, it is said that an infinite game can contain a finite game, but a finite game cannot contain an infinite game. Take it out of context, a generalist is an infinite game, who can be anything, who can be specialised. A specialist, or a specialist organisation is a finite game. Once we started the specialist game, it is turtle all the way down. Everything has to be specialised. So a start up usually start with a bunch of generalists. Over time it specialises into ever granular units
A good PM will go a long way to mitigating the problems with lack of generalists, but they can only go so far.
The heart of the problem is that at some point, you need to make decisions and solve problems where disciplines interact. In the end, you cannot really make an informed decision, or reliability solve problems in these situations without some party actually being able to grasp the cross-disciplinary picture.
In the absence of actual generalists, you usually end up with ad-hoc education - crash courses where each discipline tries to educate the other (and the PM), so that they can try to get something hammered out. And this can actually be quite successful - this happens all the time, and works out very often. In fact, this is probably where many generalists (or dual-hatters) organically arise - you get a crash course in some other area while trying to figure out a problem, and then the next time you get tapped because you already have some knowledge, and you find it kinda interesting and the next thing you know, you're a generalist of sorts.
I think it's quite true that in large projects you can't possibly have a generalist who actually knows -everything-. But it's also quite possible to have a good bench of dual-hatters (or dunno... 3-4 hatters), who can go a long way to relieving issues.
That never works in practice. Specialists want to do the thing they specialize in. What happens when you have a bug that bridges across multiple areas of the code? Nobody wants to deal with those bugs because it would mean leaving their area of expertise. This also applies to anything that applies to the game as a whole, like optimization or look and feel.
I think this is true, but even still, having pure communication-overhead roles will probably never outperform a team of generalist ICs. (edit: just my opinion - I have no data for this)
In my experience they are very limited by their lack of familiarity with the code. They might be a generalist at everything else, but that's a pretty hard ceiling.
It's the developer's job to help relay the difficulties they're experiencing to the PMs so they can all work together to reduce tech debt or weirdness.
And back when I worked at Microsoft, the PMs were call-pattern experts, too, or at least the great ones were.
We sadly don't have a lot of "great PMs" in games. Pay's not worth it to begin with as a programmer, so they wouldn't make much more (or even less) if they worked as a producer or even PM.
This has probably hit the enterprise software world as well, at least from what I can tell. A lot of people are solidly in frontend or backend; backend tends to be even narrowed into asynchronous systems, identity, etc. Finding people who have some high to medium level knowledge in most of the landscape, a more low level background in general computing, and can dig into specific subjects when they need to is exceedingly rare.
If I had to guess, generalists look very unfocused to managers and recruiters and are often not considered for TL positions.
To some degree Conway's Law [1] in that sufficiently large organizations each team will fulfill a more and more niche specialty. Basically teams get bigger and split into multiple charters, often subcategories of the original team.
I've worked in medium to large companies (3k-200k employees) and the smaller companies what is the responsibility of a team would be an entire org in the larger ones.
Even getting all the experts in a room is hard when it's the TL and Manager from half a dozen teams.
What I think is surprising is that even as a generalist you are often more suited to diagnose specialized problems, because you can look further than your own area of expertise.
Well then maybe companies should allow for more horizontal mobility for the employees that they already have instead of always hiring from the outside. Or perhaps recruiters should be trained to stop filtering out candidates from another tech stack but with many years of experience because the same patterns apply anyway, only the language is different.
I think this is related to how games are increasingly live services, therefore approximating the product development of web and as a result adopting some of the practices of that industry. Even for offline single player games, 'early access' and frequent patches are the norm, and so it's not hard to see how the organization starts solving for these problems at the cost of creative cohesion.
Games require a unique combination and overlap of creative art and software engineering, something that is hard to measure and quantify... and that is why I think it becomes evident when the leadership of a company is blind to the creative element, maximizing short term business value instead of long term creative value (which arguably has more business value, but it requires passion and love for the craft).
This also explains the declining gameplay and immersion of many (most?) games. The art and the gameplay are simply not synced to each other, so they feel separate and disjoint. For example, the environment having similarly looking but differently behaving objects like rocks.
Or how instead of designing emergent systems, most games just slap modifiers on everything and "balance" that way. +20% bow reload speed and +25% speed, anyone?
I think this harmoniousness operates in more subtle ways, too. I'm playing through the new Zelda game, Tears of the Kingdom, and it's a lot of fun, but there's something that doesn't quite click... like the UI is a behavorial engagement layer over the game, and not part of the game itself. Like you can never be completely in the world because something outside is holding your hand all the way.
The 16- through 64- bit Zeldas, for their clunkiness, were compellingly immersive. I don't think it's just nostalgia; I've played indie games where the UI is part of a whole that sucks you in. This is true even if the UI has a modern feel, like Hollow Knight, which felt overpolished in its presentation and interface, to me at least, in a way that was off-kilter -- yet something about it sucks you in instead of pulling you out, being part of the world's presentation and in an aesthetically transitive sense part of the world itself. There's something about these modern AAA games where you feel like you're not playing a game but rather a Skinner box containing a game. It's just not the same. I can't exactly put my finger on it.
This argument makes sense, but I am not sure I agree with it.
When I read a book in a modern typeface, it does not remove me from the story in the book. I do not need to read a world war II history book in Fraktur to get into it. Maybe, like typography, it has more to do with what one is used to?
A book is not a visual medium. A game is. In a book, you imagine the environment in your head, in the game, the graphics are already imagined (and drawn) for you. If the graphics already exist, a "modern" flat soulless UI overlay just makes for a painful disjointed from the in-game world experience.
It is debatable what happens in our heads. When we play one of the earlier pixel Zeldas, one might argue our mind is filling in all the details with higher resolution images. I can still agree with this argument, though.
In terms of the UI, the game controller is also a soulless interface, and I guess one could claim it gets in the way of experiencing the game.
My opinion is simply that the UI being disjointed from the game world experience might make it more or less enjoyable, depending on experience.
As an example, I prefer a file > save checkpoint on a game, that gets out of the way, as opposed to one of those games where you have to go to a special place to save. In that case, for me, the immersion is ruined because I am constantly reminded that I cannot save the game state. Other players might think a File > save checkpoint menu is a flat soulless ui and they prefer the in-game integration.
I am not talking about "if it's pixelated, you can imagine it being immersive". Games like Tropico, SimCity 4 or Sid Meier's Pirates have fairly high-resolution icons (well, obviously not on 4K but it isn't pixel art either) which leave not much room for imagination, and they work very well.
The "soulless UI" effect happens when developers try to use flat design in a game where it doesn't work with the aesthetic. A game set in the future? of course. A game set in 1700? hell no.
and also if the game uses too many numbers. If there are many "+20% this, +10% that" that also feels unimmersive so the player is dragged out of the game world.
The UI for Tears of the Kingdom has been quite annoying to me in this regard but so many aspects of that game were just troublesome. It's still fun, but the story and characters make no sense, the UI is modern and lifeless. They went into the weeds of the gameplay, you can see that's where they put their energy. I've been disappointed in a lot of the directions... It's just bad furries left and right. This game would sell with most anything they put in it, but it feels lackluster and unmemorable in many areas. I'm probably a minority in thinking the voice actors are trying too hard too..
I do love the idea of being able to go up and down though it feels a little awkward to me as I normally have to go way up to go down into the underground due to a lot of level design. I kinda wish they put some more cliffs nearby to save me the time. I like the underground a lot though and find that part the most fun.
I think this is also interesting in the direction of the OP's opinion. The new Zelda, for all its AAA chops, has in its main storyline the writing and directing of a bafflingly terrible anime. Incongruously, the story concept itself is compelling, and the scriptwriting for the game's many side characters is verbose (conventionally for Zelda) but otherwise cromulent.
I kind of wonder if something internal happened that the original article is describing. Side NPCs are designed by game designers, so probably written by them or people close to them. The game's concept is probably worked on closely with the top people in charge. But for the main story's execution, one might imagine there's no organizational requirement that the guys in charge have to have a clue how to write or direct a game or even any clue how to write or direct at all.
I wonder if this is the reason why Starfield is so disjointed and the inventory system is the same as it always has been. You would think they would put a specialist on such an important part of the game.
I am much more naturally a generalist. I started as a cell biologist, and now write software full time, but also like hardware, woodwork, literature, etc.
Everyone says that to get ahead you need to specialise, but this does not come naturally to me.
I think the points people have raised about CVs of generalists often losing out to those of a specialists is true, mostly in terms of getting through the initial screening by the non-technical HR person.
I think a good approach is mastering at least one discipline, but having a foundational knowledge of all the other disciplines in your field.
I know a lot of people who have almost zero understanding of what their colleagues are doing and that creates a lot of unneccesary friction during collaboration.
I really agree with this article. Knowing how the whole system fits together is essential in my opinion. I guess we need both generalists and specialists
AFAIK isn't this more because gamedev and general dev has gone separate ways?
Gamedev has become so highly specialized due to the lackluster quality games used to have? (There are plenty of ps1 to ps2 games that handles like garbage despite them being good games).
That has I think resulted in more "quality" of AAA games but everything is at best a very predictable bland grey goop.
It’s REALLY hard to get employed as a generalist. I’m a generalist and it’s best not to let anyone know. It causes people to get competitive in these weird ways and managers don’t know what to do with it.
I don't work in games. I once saw a glimpse of my boss's notes on me on a screenshare during one of our 1on1s over Teams. The first two bullet points he has about me are something like:
* Generalist, has worked in many different areas on different types of software
* Thinks that's a bad thing
And I do think that's a bad thing, from a career-marketability standpoint anyway. Back in the 80s or 90s, you could get away with being a "guy who knows computers" and they would pretty much stick you anywhere they needed someone who knows computers. And you had to sort of muddle through, figure out what your colleagues needed to do and how to apply the technologies you had on hand to make it easier. Starting in about the 2000s, the enterprise world especially started demanding specialists. They had a J2EE application that needed maintenance and if you didn't know your J2EE backwards and forwards, I'm sorry, there's just no place for you, BOLIYFE[0].
I had spent four years in a robotics company, and then some time at a server appliance company, and the hot thing when I found myself in need of work after those stints was "cloud". If you weren't up on cloud, the industry just couldn't use you. Résumé driven development became a must if you wanted to make a living in the industry.
And now those chickens have come home to roost in the gaming industry. Because game development isn't six guys in a strip-mall office messing around, figuring out a way to create something that thrills them at least as much as Mario did. Not anymore. I'll come out and say it: in terms of complexity, budget, and team size, games are enterprise software. Each game is an enormous project, often a distributed system, involving the contributions of hundreds. Games have passed the complexity threshold beyond which no one person can hold even a decent approximation of bigger than a tiny sliver of the whole system in their heads. The dev team is likely to be divided into smaller squads, each of which specialize in a narrow area of the game -- because it has to be. Because each of those areas, alone, is going to be more complex than can be handled by a single person, let alone a small team. And in order to not lose productivity onboarding new people, those people have to have demonstrated expertise in the narrow subset of the whole game whose team they aspire to join, typically by being credited on at least one AAA game title in that area. And generalists, unless they are literally John Carmack or at his level, don't have the deep knowledge it takes to be useful on, say, a AAA game's sound team, or level design team, or gameplay mechanics team, or scenario team.
And so we have today the situation where a Hackernews tells a promising kid, put down that homebrew retro console you built out of a Raspberry Pi and learn Unity and Unreal, because that's where you can make a real contribution to the field[1]. And he's right. The industry has changed how it works since the 90s, so in order to stay relevant in the industry you have to change too. Change with the times, or get left behind. Adapt, or die. It was always ever thus.
I sometimes wonder how much could be saved if big games like Call of Duty didn't come with endless character and weapon customisation screens to make changes that just don't matter to the game. I replayed Quake 1 and 2 recently and they're so good. Terrible graphics now, but great level design, weapons, movement, music, and enemies.
The issue has never been a lack but that the industry itself crushes you into a box and insists you don’t exist. I’ve sat in meetings where generalists are described as unicorns. There is usually zero organisational impetus to utilise people’s abilities outside of their job spec. There aren’t a lack of generalists, organisations are just blind to their existence and have no understanding of how to use them.
As a consequence I’ve always looked for opportunities that let me be a generalist, working on prototyping teams, startups that need you to muck in and now leading a team of generalists making games. Quite a few of my team came from other industry jobs doing something specialised because of what we offered.
I think Tim’s diagnosis of the issue is correct for larger teams, generalists provide glue, shortcuts and important cross-cutting expertise. It’s just the actual problem is larger teams are also terrible at finding and integrating generalists because it’s anti-thetical to their working model.