6 ms·
Factorio Is the Best Technical Interview We Have (2021)
- jmugan 4y agoI only read the first few paragraphs, but I guess they assume that someone has not played the game before? I'm continually surprised at how often we consider something to be domain-general common sense when it is in fact something domain specific that must be learned through experience.
- cfcosta 4y agoNot only that, I don't go on the docs to find the most optimized design on factorio like I have to do on code. 90% of the fun to me is to arise at those designs by myself. Jank is fun on your factory, not so much on a company product :)
- hello1234567 4y ago
- ruined 4y agothis interview process is biased against people who hate video games
- dilyevsky 4y agoI hate video games and hate factorio but still play a lot of it
- uup 4y agoProgramming interviews are biased against people who hate programming
- wink 4y agoOnly if you prefer to program with someone breathing down your neck, with a 15min deadline, and often not being able to research stuff. Otherwise I'd say programming interviews are more biased against people who like programming but hated closed-book tests in school where there is a single correct answer and never some "it depends...".
- dmitrygr 4y agoAn interview process designed to exclude anyone who does not video game? Tell me you're ageist without saying those words, I guess?
- mixmastamyk 4y agoAtari came out in the late 70s. Lots of us are good, though may need a bit of refresher.
- dmitrygr 4y agoSome adults happen to have a life outside of their computer, and thus have little time to video game. Having a life outside of a computer is correlated with things like families and serious & involved hobbies - things people develop well later in life...
- dasz 4y agoI mean... Yes? But honestly, if you can't pick up the basics of factorio in a few minutes you're less qualified than the nine-year-olds and sixty-year-olds I've taught programming to. No background in programming or software development at all. That's a very low standard. And yes, I've used factorio in those lessons as a tool. It's great for teaching refactoring in a visual way with no code at all. I usually set a class homework project involving the factorio demo. It works well. It's really not that hard to play factorio. Ok. With all that said and even with all those happy experiences I still wouldn't use factorio for interviews because I think leetcode and similar are also bad approaches. Same with algorithm questions. They're out as well.
- hello1234567 4y agowhat a fucked up assumption that every should understand the game. what if i don't like games. never played one but also never had any issues with calculus. well i can say it's a f** up thing dum people needs gaming to learn maths.
- 4y ago
- bee_rider 4y agoGoing all the way through a play of factorio would be kind of a long interview, and there seems to me to be some pretty game-specific knowledge there. But I guess you also learn if the person is a good social fit as well.
- kojiromike 4y agoI love factorio, but it would be a lot harder if it didn't have magic backpressure for everything. Can you imagine all the piles of green chips everywhere if the assembler just kept dumping them until it clogged? I'm not even saying that it'd be better for interviews if you could turn off that backpressure. You gotta limit these things. I'm just saying, if someone asked me how factorio was different from systems in the real world, that'd be my first example.
- Therenas 4y agoWell, there is always the Belt Overflow mod [0], but is is truly masochistic. [0] https://mods.factorio.com/mod/belt-overflow https://mods.factorio.com/mod/belt-overflow
- nrb 4y agoThat “magic backpressure” is solved in the real world with simple sensors, shutting down part of the manufacturing line is a relatively common occurrence (maintenance, safety stop, etc) and doesn’t cause the entire system to collapse.
- unethical_ban 4y ago"magic"? You mean a human shutting down a line when there is a backup on the output?
- sly010 4y agoSoftware often has built in back pressure. Most IO syscalls block, TCP surely does, so everything built on TCP does. Belt is memory. The full belt equivalent of software is OOM. If memory allocation can't be done everything comes to a halt. We could write software that instead of crashing just sits there until memory becomes available... It's the human scale circuit breakers (request timeouts) that cause issues. I guess one has to differentiate between batch processing software and interactive request/response style software. Factorio approximates the former, not the latter, but some of the underlying concepts are still the same.
- setr 4y ago> Can you imagine all the piles of green chips everywhere if the assembler just kept dumping them until it clogged? Isn't that effectively the same thing as when the belt stops? You've just added a bit more buffer before everything seizes up, and some extra cleanup. I'm not even sure you can say factorio has backpressure; the factory getting overloaded doesn't trigger slower production rates in prior parts of the system. The queue gets full and stops accepting input, and the prior machines stop sending input as a result (they could alternatively send input and it be dropped & deleted ala software systems, but that's just making it harder to debug because you don't see the whole thing freeze; the problem/solution is still the same)
- tylervigen 4y agoThis method is obviously biased towards people who have already played Factorio, and in a lesser way towards folks who play games. Maybe that’s similar to the bias toward knowing FizzBuzz, but it’s much weirder?
- intelVISA 4y agoas much as I love the very weird, outside the box approach this is an unfortunate case of what leading epidemiologists term "video game brain"
- vsareto 4y agoThis article is really just making an analogy of software using Factorio concepts and reverses any suggestion to using it as an interview in its conclusion
- hnfong 4y agoIt's not only much weirder, but much less irrelevant. There aren't many people spending their time specializing in programming fizzbuzz solutions, so the "bias" is typically towards programming in general -- which isn't a bias at all because that's what the interview is about.
- dreamyfigment 4y agoI bounced hard from Factorio because it feels like work so... sure, it makes sense.
- AlwaysRock 4y agoWhat a very silly article. But kudos for trying something different. Even if its kind of insane.
- rdtwo 4y agoI love factorio but it’s also an important lesson on the traps of premature optimization and automation. This is my favorite factorio video and it shows a lot about how you can prevent a lot of unnecessary optimization in the early game. https://m.youtube.com/watch?v=LSyrbPsnNGo https://m.youtube.com/watch?v=LSyrbPsnNGo And you can indeed never bother with circuits on refining for example. In fact you don’t need to touch a lot of the features in the late game if you stay focused. If you can find someone that plays like this then you have a real winner. Very much how Craig’s list found success in their business.
- tjs8rj 4y agoIf Craigslist is the pinnacle, is the best software engineer one who can create the most “impact” per hour of development? Think Craigslist has several engineers, but it’s really a skeleton crew for the scale of their “impact”
- rdtwo 4y agoI mean there is no best, only best for application but imo a really strong senior engineer can identify the problem and build the most efficient minimal framework that gets you to that goal. Understand that getting bogged down in over optimization for a future potential but undefined scenario is not Usally worth the upfront investment. Additional he understands that it’s ok to over build cheap things like assemblers and steam power plants, and accept 80% utilization from solar instead of trying to bank the last 20% into accumulators. That kind of thinking not only results in a better, cheaper,faster (pick 2) product but also teaches junior engineers how to be more efficient by example
- KingMob 4y ago"You can either submit your Github profile, or your Zachtronics leaderboard."
- yodelshady 4y agoThis still brings up one of my bugbears for factorio - the inability to write comments/documentation. I want to be able to make blueprints with complex, but well-defined and documented, input / output structures that I can look at in six months' time and still know how to connect up.
- art0rz 4y agoIt's common to use constant combinators to tell the user what item goes on what input belt/pipe. Blueprints also allow you to provide some text. Being able to plop down a block that allows you to enter some text would be nice, though. I'm sure there's mods that do that.
- pjc50 4y agoIt could really do with a simple trick from minecraft: signboards.
- relativeadv 4y agoI have an even better litmus test. If the candidate has a picture of an anime/furry character as their avatar you can pass.
- thenipper 4y agoHa. I have the opposite reaction.
- SteeCee 4y agoI have no stake in either side of this but I would love to hear you elaborate on this. What makes you more interested in a person that markets themselves behind something that isn't your real face?
- deleted 4y ago[deleted]
- mbrameld 4y agoWhy would you need to see the candidate's face? To make sure they look like you?
- dpkirchner 4y agoFactorio is the game that taught me I am indeed susceptible to addiction. It has a near perfect infinite feedback loop where you're presented with a problem and can solve it quickly, only to immediately find that solution created another problem to solve. Solving problems feels really good.
- soulofmischief 4y agoAs an extension of my non-addictive mindset, I have never touched Factorio in the same way that I have no interest in trying crack.
- _fat_santa 4y agoI don't like this. The first problem is Factorio is not coding. Some kid can come in, not know anything about programming, but ace the interview on the level of a "Senior" developer because they knew how Factorio worked. The other problem, and arguably the bigger one, is that this really only works for Interns, Juniors and Mid level engineers. Once you get to senior you start specializing and that's what truly makes you "senior" in a space. If I came in to an interview for a senior position and they had me play factorio? I'm honestly not sure if I would keep taking this place seriously. Like don't you guys want to know about the stuff I have worked on? The stuff I have previously built? Are you really going to take all that experience, throw it out the window, and hinge your hiring decision on how well I do in a video game? Personally, if a place interviewed me like this I would be a bit insulted and probably not call them back.