• 0

Programmers: Your favorite interview questions


Question

I haven't seen one these posts yet on this forum(if there is forgive me : )), but I figured to help out more people looking for programming work I would start a post for employers who are looking to hire new programmers what kind of questions you guys ask. I'm the technical director at a small game studio in LA, and were expanding so I also looking to see what everyone does so I can adjust accordingly.

Some of the basic questions I ask are:

What is global scope/local scope.

What is a template class

What is inheritance/polymorphism/etc.

Than some really basic logic stuff like whats a recursive function, etc etc.

Than I begin to ask a couple questions that are kind of off the wall because one thing I noticed is College graduates from big schools such as UCLA 9/10 can't figure stuff for themselves. Students are so used to stuff getting spoon fed to them, some of which is just nasty. One thing that really irritated me at one of the studios I worked at previously a couple of there senior programmers came to me and said "I don't know how to do xyz, can you help?" This normally is a pretty common thing, except when xyz happens over and over again and its something that easily be found by doing a quick google search.

I ask the interviewee if they can do something that 99% of the programmers out there can't do. They would obviously say I don't know, I would then ask them than to look it up for me on google and write out basic steps on how to get it done. Lets say I ask them how to register a custom Debug Engine in Visual Studio, first google search for "visual studio custom debug engine" which turns up http://msdn.microsof...4(v=vs.80).aspx , with a link to http://msdn.microsof...(v=vs.110).aspx. Even though the information on the latter article is actually wrong if they copied that I would be so happy. I've had guys sit there for 10 minutes struggling, and I feel that's kind of ridiculous. Every programmer in world should know how to use google :/.

Than depending on the level of the job, I would go into some more nitpicker things say in Unreal, Unity, D3D, whatever and if someone didn't know the answer I would ask them to google it and give me an explanation. I had actually had one guy who didn't graduate from a college, straight out of high school and he didn't know something I asked him, and than he immediately asked if he could go on google and look it up. I actually hired him on the spot and he ones of the best programmers I've ever had.

Anyway what kind of stuff do you guys ask?

Recommended Posts

  • 0

The trick is that the naive algorithm only works with a monospace font. The extreme case, a string composed of 'i's, will hold much more letters than normal text in a certain amount of pixels. So you have to measure the text if you want to do it correctly.

but the way he wrote the question it said nothing about text width

2. In Java, write a function which takes a string and returns a string that is the input if the input is 6 characters or less, and the first 3 characters + "..." if it's greater than 6.

that is pretty straight forward, you are only careing about the number of characters... now if you said that as fit a string of text into a row that is 250 pixels wide with the font arial, and type settings of 12pt and bold, itallic, replace any overlap with an elipsis... that would make more sense... can't be a trick question if it only says take 6 char's replace anything over 6 with the first 3 plus an elipsis...

  • Like 2
  • 0

but the way he wrote the question it said nothing about text width

2. In Java, write a function which takes a string and returns a string that is the input if the input is 6 characters or less, and the first 3 characters + "..." if it's greater than 6.

that is pretty straight forward, you are only careing about the number of characters... now if you said that as fit a string of text into a row that is 250 pixels wide with the font arial, and type settings of 12pt and bold, itallic, replace any overlap with an elipsis... that would make more sense... can't be a trick question if it only says take 6 char's replace anything over 6 with the first 3 plus an elipsis...

Well, that's partially why I mentioned that the question is poorly defined. But the main issue is that Java strings are UTF-16, NOT UCS-2. So if you have a string where the first code point is a surrogate pair, then the naive algorithm will produce an invalid string. So what you want is code points. Of course, that's not the entire story. What do you do about control characters? You probably want to interpret those ones you can, like BOM. But what about accents and other "modifiers". Those aren't entire characters, so you probably want to treat "e" and circumflex as a single character. And of course, if the reason why you doing this is to display the string in a restricted space, then the whole "6 characters" is moot since you now need to take into account font, size, weight, and any number of other rendering factors. So overall, not an easy question.

  • 0

Well, that's partially why I mentioned that the question is poorly defined. But the main issue is that Java strings are UTF-16, NOT UCS-2. So if you have a string where the first code point is a surrogate pair, then the naive algorithm will produce an invalid string. So what you want is code points. Of course, that's not the entire story. What do you do about control characters? You probably want to interpret those ones you can, like BOM. But what about accents and other "modifiers". Those aren't entire characters, so you probably want to treat "e" and circumflex as a single character. And of course, if the reason why you doing this is to display the string in a restricted space, then the whole "6 characters" is moot since you now need to take into account font, size, weight, and any number of other rendering factors. So overall, not an easy question.

I don't know about all accents, but in UTF-16 the circumflex and other common accents are not separated from the character. (IIRC, windows-1257 does that, which is useful to remove accents from a string by converting it back into ASCII)

But your question was worded in a way that makes "s.length <= 6 ? s : s.substring(0,3)" an acceptable answer.

  • 0
Well, that's partially why I mentioned that the question is poorly defined.
Then define properly the request. "Character" in Java means "Unicode scalar value" {\u0000 ? \u10FFFF}.
And of course, if the reason why you doing (?)
It is irrelevant because it was not stated in the request.
  • 0

I have a really hard time believing any "programmer" could be eliminated by the fizzbuzz question (I wish I had easy questions like that for my interviews :/)

Personally I think most "interviews" for developers are ridiculous and are usually aimed at making the person fail (only tool you have are pencil and paper and the questions are most of the time extremely obscure and could be answered with more time/better tools)

I know most people I work with that are "good" at interviews are usually just that, most of their code usually look like crap.

  • 0

That's the whole pitfall of FizzBuzz (unless you do duplicate checks, which is usually not wanted)

Could you give the solution? Or is the solution language specific, like Python assigment:

A, B = B, A 

But still, internally I'm sure a temporary variable(s!) is being used.

EDIT: Forgot to add my solution.

void FizzBuzz()
{
	for (int num = 1; num  &lt; 101; num ++)
	{
		bool multiple = false;
		if (num % 3 == 0)
		{
			cout &lt;&lt; "Fizz";
			multiple = true;
		}
		if (num % 5 == 0)
		{
			cout &lt;&lt; "Buzz";
			multiple = true;
		}
		if (!multiple)
			cout &lt;&lt; num;
		cout &lt;&lt; endl;
	}
}
[/CODE]

I'm still not sure if it's better to declare a variable outside of the loop, but I'm fairly sure it will be optimized by the compiler.
And my solution is fairly readable (I hope).

Why not use an else clause rather than a variable?
[code]void FizzBuzz()
{
        for (int num = 1; num  &lt; 101; num ++)
        {
                if (num % 3 == 0)
                {
                        cout &lt;&lt; "Fizz";
                }
                else if (num % 5 == 0)
                {
                        cout &lt;&lt; "Buzz";
                }
                else
                        cout &lt;&lt; num;
                cout &lt;&lt; endl;
        }
}

  • 0

Why not use an else clause rather than a variable?

Because in the case of %3 && %5 you need to print 'FizzBuzz'. Now you don't and have failed the assignment (into it's pitfall).

That's why I have a boolean variable that keeps track of whether it printed "Fizz" OR "Buzz". I thought about doing

it differently, something with scopes but that wouldn't do much and my solution is fairly readable and simple.

  • 0

Why not use an else clause rather than a variable?

void FizzBuzz()
{
        for (int num = 1; num  &lt; 101; num ++)
        {
                if (num % 3 == 0)
                {
                        cout &lt;&lt; "Fizz";
                }
                else if (num % 5 == 0)
                {
                        cout &lt;&lt; "Buzz";
                }
                else
                        cout &lt;&lt; num;
                cout &lt;&lt; endl;
        }
}

You failed!

You're missing the FizzBuzz state (if dividable by both 3 and 5 aka divisible by 15)

  • 0

I've been asked that question. As soon as you give the solution using modulus, they ask you to do it again without using modulus/multiplication/division.

I assumed by that you meant no arithmetic operations (including bitwise) whatsoever and was like hmm that's impossible. But, I see it was only the particular types.

 

EDIT: well other than just comparisons over and over...  :laugh:

  • 0

 

  • Given two integer variables, A and B, how could you swap their values without using a third variable? (This is my favourite. It wasn't actually given to me, but to my housemate at the time. He didn't get it, but the interviewer gave it to him to do on the train home, he figured it out on the train and emailed the answer to the interviewer, subsequently got the job :p)

I think this is a poor question because the only solution is not really an solution since it contains defects that break the intended purpose. Clever tricks with potentially subtle bugs aren't really clever tricks at all. Personally, I would have just given an inline asm solution that only used registers and pointed out that the only memory accesses would be the fetch/storeback of A&B and that no temporary exists in memory. It's not clever and the compiler will do it automatically anyway, but it works in all cases.

 

EDIT: There's also an XOR solution for this, but it has caveats in practice also.

  • 0

I rely on their ability to solve logical problems using their own made up syntax. I've only had to hire once though so my experience in it is limited. My train of thought was that I prefer that they can solve complex problems instead of code complex solutions.

 

FizzBuzz is great and all, but I prefer someone who can learn it quickly as opposed to someone that can (re)code it efficiently; let's be honest, most of the people who pass a fizzbuzz test have already done or practiced a fizzbuzz test. I have (and for merits of ability it's in my interest to inform you all I passed it, but of course).

 

 

In the end it worked out great. They were a stronger programmer than I am, which isn't that hard to do lol.

  • Like 2
  • 0

Hello,

I actually read you guys talk about FizzBuzz and I think Im missing something:

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace fizzbuzz
{
    class Program
    {
        static void Main(string[] args)
        {
            for (int i=1;i<101;i++)
            {
                if   ((i % 3 == 0) && (i %5==0))
                {
                    Console.WriteLine("FizzBuzz");
                }
                else if (i % 5 == 0)
                {
                    Console.WriteLine("Buzz");
                }
                else if (i%3==0)
                {
                    Console.WriteLine("Fizz");
                }
                else
                {
                    Console.WriteLine(i);
                }
            }
            Console.ReadLine();
        }
    }
}

Something wrong with the code? :)
  • 0

Hello,

I actually read you guys talk about FizzBuzz and I think Im missing something:

 

Something wrong with the code? :)

 

 

Your code should work... but you might want to think about efficiency. If the number is divisible by 3, but not 5, you end up checking if the number is divisible by 3 twice and 5 twice.

 

But efficiency can be misleading. Should we optimize for (code) space efficiency, memory efficiency, or time efficiency... and how much longer should we assume a multiply/divide/modulus takes than an add?

  • 0

Your code should work... but you might want to think about efficiency. If the number is divisible by 3, but not 5, you end up checking if the number is divisible by 3 twice and 5 twice.

 

But efficiency can be misleading. Should we optimize for (code) space efficiency, memory efficiency, or time efficiency... and how much longer should we assume a multiply/divide/modulus takes than an add?

No point in wasting time or effort on simple optimizations that the compiler is going to do for you anyway: it just obfuscates the high level code for no benefits in practice. Same with throwing away assignments to temporary variables.

  • 0

No point in wasting time or effort on simple optimizations that the compiler is going to do for you anyway: it just obfuscates the high level code for no benefits in practice. Same with throwing away assignments to temporary variables.

 

I absolutely agree. However, your interviewer is going to have some questions for you after you finish writing the code. It's good to have some answers about efficiency, and other possible ways to write it.

It's a shame this topic got so hopeless devoted to beating the dead FizzBuzz horse. There are much more interesting questions that are more likely to be asked. Other than Hulu, who asked me to code FizzBuzz, every other interview I have been on have asked questions about linked lists... and sometimes about doubly linked lists.

  • 0

I absolutely agree. However, your interviewer is going to have some questions for you after you finish writing the code. It's good to have some answers about efficiency, and other possible ways to write it.

True that, any interviewer worth their salt will try to explore the problem and see your logical processes. The thing is, I see suggestions to do those sort of thing in real code in spots where it is obviously not any sort of bottleneck all of the time. In practice, I think it is focusing on the wrong thing in real world optimization.

 

It's a shame this topic got so hopeless devoted to beating the dead FizzBuzz horse. There are much more interesting questions that are more likely to be asked. Other than Hulu, who asked me to code FizzBuzz, every other interview I have been on have asked questions about linked lists... and sometimes about doubly linked lists.

I've heard google asks some difficult questions (none of that FizzBuzz). Another question I've heard is the algorithm for palindromes, and then to step it up to more difficulty, finding the sub palindromes (including shifted palindromes, e.g. abbattttttttttt, where 'abba' and 'bb' are matches).

  • 0

True that, any interviewer worth their salt will try to explore the problem and see your logical processes. The thing is, I see suggestions to do those sort of thing in real code in spots where it is obviously not any sort of bottleneck all of the time. In practice, I think it is focusing on the wrong thing in real world optimization.

 

I've heard google asks some difficult questions (none of that FizzBuzz). Another question I've heard is the algorithm for palindromes, and then to step it up to more difficulty, finding the sub palindromes (including shifted palindromes, e.g. abbattttttttttt, where 'abba' and 'bb' are matches).

 

I've had all of those logical questions (fizzbuzz, palindromes, you name it) on tests and exams for Java, in my 1st year of college (1st semester, really); it really pushes the logical thinking forward so when a student starts learning higher maths, physics and programming it can use the rational thinking to think out of the box.

 

by the way: i'm not a programmer :)

 

the problem solving aspect is one of the most valuable things a programmer must have (not only just the programmer, but since this is the topic...), not to mention code knowledge and the ability to learn new stuff. I've had questionable interviews made by psychologists that didn't know jack about the job i was being interviewed (and therefor they used questions that anybody could find on the interwebs, not really doing a good job filtering the interviewer really) or being asked incredible dumb and trick questions that made me want to question why should i want to join an enterprise that can't even do a proper interview; when i answered all those questions i realized that all they wanted is someone that was good but for cheap. :/

 

so, answering OP (this thread is kind of oldie...2012, eh?): my favorite question i ever had in a interview was:

- HR woman: "well lets see... i think for starting the paycheck will be 1400?..."

- Praetor: /does an incredible stunned face since i don't even get 1000? (tough days we are getting in my country)... 1400? for starting is a very welcome jump!

- HR woman: "oh... you seem really upset; i think we can push to 1500? + bonus, is that OK for you?"

- Praetor: / eyes pupils change to euro signs. :woot:

  • Like 2
  • 0

I've had all of those logical questions (fizzbuzz, palindromes, you name it) on tests and exams for Java, in my 1st year of college (1st semester, really); it really pushes the logical thinking forward so when a student starts learning higher maths, physics and programming it can use the rational thinking to think out of the box.

 

by the way: i'm not a programmer :)

 

the problem solving aspect is one of the most valuable things a programmer must have (not only just the programmer, but since this is the topic...), not to mention code knowledge and the ability to learn new stuff. I've had questionable interviews made by psychologists that didn't know jack about the job i was being interviewed (and therefor they used questions that anybody could find on the interwebs, not really doing a good job filtering the interviewer really) or being asked incredible dumb and trick questions that made me want to question why should i want to join an enterprise that can't even do a proper interview; when i answered all those questions i realized that all they wanted is someone that was good but for cheap. :/

 

so, answering OP (this thread is kind of oldie...2012, eh?): my favorite question i ever had in a interview was:

- HR woman: "well lets see... i think for starting the paycheck will be 1400?..."

- Praetor: /does an incredible stunned face since i don't even get 1000? (tough days we are getting in my country)... 1400? for starting is a very welcome jump!

- HR woman: "oh... you seem really upset; i think we can push to 1500? + bonus, is that OK for you?"

- Praetor: / eyes pupils change to euro signs. :woot:

I think you are absolutely right: many of these are just simple 1st year assignment type things. And, really, they are just used to weed out applicants who can't even do that much. At the same time when you start to step up the difficult and have them work through successively more difficult versions of a similar problem, you get a feel for how the applicant approaches problem solving. That's how I'd conduct an interview myself. For example, asking the interviewee how they'd handle arbitrary sized swaps in the case of the integer swapping, asking what the potential problems are; or in the case of the palindromes asking for a better complexity solution than what is probably going to be offered. Just seeing if they can reason through things like that.

 

You know, now that you pointed out the thread is from 2012, I'm not even sure HOW I managed to get to it. I could have sworn I clicked on the updated threads or spy and saw it there. I rather do like your answers though. I think they fit the bill better for favorites.

  • 0

Guys, this thread is from 2012.

That's my fault. I didn't notice that when I initially posted. But like I said before, I'm not even sure how I ended up on the thread to post since I only go to threads though the spy or thread lists.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Trailer park trash “sport “, fits the current White House
    • KataLib 5.3.0.0 by Razvan Serea KataLib is more than just a music player — it's a complete audio suite designed for music lovers and creators alike. It combines a powerful audio player, a flexible metadata editor, a capable audio converter, and a music library manager into one streamlined application. Core Features: Audio Player Enjoy seamless playback of virtually any audio format or even streaming video files. DJ Mode lets you mix tracks with manual or automatic crossfades. You can also load and save WinAmp-style playlists for quick access to your favorite sets. Audio Converter Convert between a wide range of audio formats effortlessly. Trim or normalize your output automatically, and even extract audio from streaming video sources. Ideal for preparing files for different devices or platforms. Metadata Editor View and edit ID3v2 tags and other metadata. Batch edit multiple files at once, and fetch missing information directly from the MusicBrainz database. You can also apply or update album art with ease. Music Library Manager Organize your entire audio collection, search across tracks instantly, and download cover images from the internet — or use your own custom artwork. KataLib makes it easy to keep your library tidy and enriched with useful info. Supported Formats: KataLib supports a wide range of both lossy and lossless audio formats: Input: OPUS, AAC, FLAC, M4A, MP3, MP4, MPC, APE, AIF, MKV, AVI, MOV, FLV, WEBM, Ogg Vorbis, WAV, WAVPack, WMA, AC3, OGA, MP2, MPGA, MPEG, DTS, M4B, DSD (DFS) Output: OPUS, FLAC, M4A, MP3, Ogg Vorbis, WAV Under the hood, KataLib uses the trusted FFmpeg engine for audio conversion and media playback, ensuring compatibility with virtually all mainstream media formats. KataLib 5.3.0.0 changelog: Added Option to select the Zoom level of the Oscilloscope visualizer. The taskbar button of the app now displays the progress of its processing tasks. The metadata text of the Visualization Video can now be aligned by the user. We can now reorder the order of the Visualizers and Metadata, in the Visualization Video Setup dialog, by removing any item and adding it again. It will be added at the end. Changed The font size of the Visualization Video can now be more than 30 points. Updated yt-dlp library to version 2026... Fixed Opening the Visualization Video Setup dialog could fail if the settings were wrong. Sometimes there were false duplicates in the Rename Tracks dialog. Tracks without metadata appeared without title in the Recent menu. Download: KataLib 5.3.0.0 | 90.0 MB (Open Source) Links: KataLib Home Page | Github | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • EA Sports UFC 6 review: Brutal, satisfying, and surprisingly accessible to newcomers by Pulasthi Ariyasinghe EA’s UFC series of fighting games has been putting out games for over 10 years now, but it’s a series I have never spent any time with. As a PC guy, the series being console-exclusive is the primary reason for that. The latest entry to the series, EA Sports UFC 6, is still not coming to PC, but I have an Xbox now. When EA reached out to see if I could have a crack at the game and give my opinion about it, I finally got the chance to see what this franchise is about. I have spent about a week playing UFC 6 on the Xbox Series X. Despite my lackluster skill with fighting games, I still have fun with entries like Street Fighter and Tekken. I quickly came to realize this is a different kind of fighting game, not the arcade titles I am usually dabbling with. Most of the week that I spent playing UFC 6 was in the career mode, trying not to get knocked out while slowly improving my combos and reactions. The review below will be from the perspective of a newcomer to the series and an amateur fighting game fan, so please forgive any mistyped lingo or series-staple mechanics I am not comprehending. In the Ring Getting a solid hit in UFC 6 is satisfying. It’s probably the most satisfying impact reaction I have seen in a fighting game. The ripples in the muscles, the spray of sweat (and blood), the meaty sound, and the subsequent stumble all carry a lot of weight. If I miss a heavy swing like that, though, I already know that I'm in for a world of hurt from the incoming counters. The fighting is a real treat. The actions aren’t as snappy as arcade titles, so a miss feels like a much bigger mistake here. This slowness did take some getting used to, but I felt the improvement in my abilities even after a few drills with basic punch and kick combos. If I’m not deliberate with my actions in the ring, whether it be a hasty retreat or a flying punch, the possibility of getting instantly knocked out is always there. The head, chest, and legs all come with their own health bars, so guarding just one area is just asking for trouble. A few hits to the head, and it's game over. Meanwhile, you won’t even be able to stay on your feet if they get damaged enough, drastically lowering the total amount of stamina available for the rest of the match. I was also encountering a large range of fighting styles to customize my own fighter with. There are a huge number of real-life superstars here from multiple eras. It’s not as exaggerated as Street Fighter or Tekken, but the way they move, evade, throw punches, or even take steps is based on their real-life counterparts. I can see this being a big draw for any mixed martial arts fan. One feature I was surprised to see here was the 'Flow State' ability. As rounds progress, a power-up meter can give a temporary boost to the unique fighting style of the selected fighter, essentially boosting what they are good at. There is an entire visual effect that kicks in when activating this, too. The surprising part was seeing something like this in a game that feels like it’s aiming to be more of a simulator than an arcade fighter. My skill level is too low to use this exactly how the game wants me to, so I ended up triggering it whenever the opponent did it as well. Streamlined vs Authentic When I first started it up, UFC 6 asked me about my experience with the series. Being genuinely new, I took its advice and opted for a lowered difficulty level and 'Streamlined' controls. Quickly, I realized that this wasn’t for me. My chosen fighters were throwing random attacks, no matter what combination the game was trying to teach me. Win streaks were happening, and I was already getting bored out of my mind just a few matches in. Turning off this mode and switching to 'Authentic' controls fixed everything right up. I was now able to control my fighter with more precision than I expected. I could control each arm and leg, which body part my attacks would aim at, and the fully customizable controls for setting up unorthodox moves were a cherry on top. None of these made me an expert at the game, but at least I was being beaten up fairly. This is not a point against UFC 6, though. Giving the option for anyone to enjoy the game is always a good thing in my eyes. There is a lot of customizability in the difficulty, with everything from slow-motion reactions to specific assists being offered as toggles. If I had a friend coming over and wanted to try a quick 1v1, the streamlined controls option is one I’d consider to make it a light and fun fight. The one part of the fighting that did not click with me was the grappling. Being taken to the ground brings in an entirely new control mechanism involving mounts and submissions that feel more like quick-time events than the heavy, tactical fighting I had seen so far while standing. The game wants me to hold sticks in certain directions to change the position or pull off submissions, trying to do the opposite actions of the opponent. Even though I tried to get used to this gameplay, it just felt like a momentum killer, and I eventually just wanted to get back on my feet to get back into the action. Legacy and Career It was UFC 6’s career mode that I wanted to play the most when I started it up. I grew up with EA Sports games, and taking my team from the ground to the top has always been my favorite task. UFC 6 has that same option but also offers a more cinematic entrance to the career experience than I expected with ‘The Legacy’ mode. This mini-campaign follows an up-and-coming fighter, Chris Carter, who is attempting to reach the heights his father had reached in the sport. Starting with a small-time gym and coach, the story follows both his growth in the space as well as the growing rivalry with a friend and fighter, Danny Lopez. The fights in this mode are very good at introducing a newcomer like me to the sport and its varying techniques. Cinematics land between the major fights, showing the growing tension between the two fighters as the years go by, feeling the pressure to not miss out on the hard-earned chances. The dialogue can be a little corny at times, especially when the bar fights kick off, but I largely enjoyed the storyline. At the end of it, I was pretty much familiar with all the mechanics of the career mode, unlocking new skills and moves, and how I needed to approach fights, both outside and inside the ring. This story mode isn’t a very lengthy one, so don’t expect an hour-long campaign. Once the conclusion is reached, Carter’s journey continues as if it’s a normal career playthrough, though I decided to start over from scratch now that I have some know-how about the basics. The career mode is very streamlined, which is to be expected considering there isn’t a team to manage like in other EA Sports games. It’s the journey of one fighter. When a fight comes up in the calendar, I could choose how many weeks I dedicate to preparing for it at the gym. A longer prep time gives the opportunity to get my fighter’s fitness up (giving a bonus during fights), earn more money and points for unlocking new skills, and gain more fans to fast-track the rise to stardom. While that sounds like a lot of things to manage, it’s more like a few clicks. There is a social media menu that sometimes pops up with canned replies I can send to fans, and the sponsors are once again a single click away from being assigned as finished. It’s the training aspect that adds a gameplay angle. Using the money from winnings and sponsorships, I was hiring different types of trainers and learning fancier moves to use in the ring. One small thing I appreciated was that it was possible to injure each other during these training sessions. If a trainer goes down in a bad way while sparring, they won’t be available for the remainder of training. If my fighter is injured, it takes valuable time and resources to heal and recuperate. Just like in real life, it makes sense not to go so hard during training sessions and save that energy for the main event. Every training or sponsorship activity I took part in used up the days and weeks I had before the next fight, bringing a balancing element to the whole ordeal. There were times I simulated most of these to just get to the next fight, but the grind for gaining even the slightest bit of advantage while trying not to overdo it is an enjoyable one. Outside of quick fights and career modes, UFC 6 also introduces an almost museum-like mode to explore a trio of fighters considered to be legends of the sport: Max Holloway, Alex Pereira, and Zhang Weili. The aptly named Hall of Legends mode is unlike everything else seen in the game. Each of these fighters has entire levels dedicated to them that I could walk around in and explore their journey into the UFC. This includes footage from real-life fights and interviews about their original inspirations and training methods. Each of these spaces is almost like an interactive documentary. Once the highlights are done, the mode offers the opportunity to take over a deciding fight from the superstars. It’s an impressive transition. Going from the real-life televised event with crowds and commentary to immediately taking over in the game has some real hype behind it. Performance and visuals It’s clear to see that UFC 6 is going for a photo-realism look with its visuals compared to any other fighting game. The fighters don’t look great in selection screens. But inside the arenas, under the flood lights, surrounded by crowds, and facing an opponent, the visuals are more than impressive. As ghastly as it is to witness, things like blood spraying into the mat and muscles reddening as they get pummeled keep improving the immersion. The fluid animations help sell the illusion even further. A missed kick carries the momentum to require a corrective step. Hard punches that glance off blocks give off the air of a hit that still took some wind off the opponent’s guard. The special moves with flips and spins look mega awkward when missing, just as they do in real life. Suffice to say, the Frostbite Engine powering this game is one of the biggest strengths of EA development studios. Playing on the Xbox Series X, the 60 FPS gameplay did not miss the mark or cause any slowdowns that I could detect. I still wish this series were on PC to see just how far the developer can push the engine. One area I continue to have issues with, surprisingly enough, is the menus. The game has fast loading screens, but almost every menu I click through has a large amount of noticeable lag before it registers. This is immensely painful in the career mode, since I have to go through multiple menus between fights to train and do sponsorships, and having a 3-second pause when selecting a simple move between pages is the only time that made me quit the game. Thanks to Xbox’s quick resume, though, I was able to instantly jump back in the next day to the same point (and wade through more laggy menus). Conclusion My primary mission going into this EA Sports UFC 6 review as a newcomer to the series was to find out if this is a good jumping-in point for someone like me. Suffice it to say, the game passed that test with flying colors. Despite the high skill ceiling, the legacy mode introduction campaign, multiple types of accessible controls, and streamlined career had me picking up the basics and fighting styles much faster than I expected. I wish I had gotten to try out competitive multiplayer during my time with the game, too, but the lack of players in the pre-release version prevented this. The impressive visuals and animations, coupled with the impact physics that let me feel every punch and kick easily, made this the most immersive fighting game I have played. The only part that gave me pause was the grappling gameplay, which killed the momentum in most fights. The Flow State amplifying system didn’t hamper the experience, but I also felt like it made more sense for an arcade fighter, not this. Easily the most annoying thing about UFC 6 was its laggy menus, which I hope get some sort of fix later. Returning series veterans might have a completely different experience from me. But for a new fan like me looking to climb ranks and see fighters get floored in spectacular ways, UFC 6 doesn’t miss a step. EA Sports UFC 6 is releasing on June 19 across Xbox Series X|S and PlayStation 5 for $69.99. Ultimate Edition owners can already jump in via advanced access. This review was conducted on the Xbox Series X version of the game provided by EA.
    • No, Microsoft is obviously just spending money on maintaining a product with 0 users.
  • Recent Achievements

    • Week One Done
      ssd21345 earned a badge
      Week One Done
    • Contributor
      MarkHughes4096 went up a rank
      Contributor
    • Dedicated
      jordanspringer earned a badge
      Dedicated
    • Rookie
      Rimplesnort went up a rank
      Rookie
    • One Year In
      Markus94287 earned a badge
      One Year In
  • Popular Contributors

    1. 1
      +primortal
      486
    2. 2
      +Edouard
      173
    3. 3
      PsYcHoKiLLa
      138
    4. 4
      ATLien_0
      94
    5. 5
      Steven P.
      79
  • Tell a friend

    Love Neowin? Tell a friend!