In the previous parts of this series, I covered what is generally regarded as good content for an entry level portfolio and then followed it up with suggestions and ideas on how your portfolio could be presented. In this part I am going to take a look at some real world portfolio’s that have been created by people looking to enter the games industry as entry level programmers. As you would expect the easiest way to do this is to use online portfolio’s that are publicly available so while this part does have a skew towards the online, the content will be just a relevant to a demo CD or any other presentation method.
For the sake of consistency I have included screen shots along with a web link to the real thing as portfolios tend to change as careers develop and people’s skills improve and grow. I should also point out that these critiques are in no way meant to be in depth reviews of the portfolios. Ideally you should make up your own mind as to how good you think they are and how they could help you develop your portfolio in the future.
Sean Carrica – http://seancarrica.com
Sean’s website is very clear and well presented. Every page has a clear (very clear) link to each part of the portfolio which means you can easily dart around the site without having to move back to the home page once you have finished reading the current section. The way the games are linked works quite well, especially as there are only a few and in this case you don’t need to really categorize them in any way. If this was required, having smaller, easier to group images under a relevant banner would work quite well.
The CV is presented in multiple formats which always gives the reviewer the option as to how they want to view it. As a user of OpenOffice I am often wary about opening Word documents so a .pdf file makes this much easier to manage. Along with the CV is Sean’s brief bio, which really gives an impression of who he is and what he is looking for. While this is easy to access, it would probably be more appropriate on the main page since it covers exactly who he is and would give a reviewer more information without having to look for it.
As for the projects themselves, there is a nice variety of skills on show and it also makes clear where Sean wants to work (game programming rather than tools or engine level you would assume) and the sizes of the projects are appropriate for the roles he would probably apply for. Ideally the C++ projects would be completed (rather than On Hold) since this is the language he will most likely end up working with but the screen shots and code samples give you an idea of the projects and their scope. If Apache was written and completed in C++ then the range of projects would be ideal.
I would also question the inclusion of the Code Snippets section, which by Sean’s own admission contains code that was designed for a specific purpose but then not actually used. You would start to wonder why, what were the reasons for not using it yet still including it on the portfolio?
It’s a shame that not all the projects (even the on hold ones) have screen shots or demos. Because there are no executables available I would really expect to see this for each one, giving the reviewer the ability to judge the games and assess what Sean could do. Are the projects that do not have video or screen shots available simply not good enough for a portfolio – while I personally doubt this it will cross some peoples minds and reduce the impact of his work.
As you can probably tell, Sean’s portfolio is a solid piece of work that contains a good range of projects and is presented very well. The use of a simple, clean URL is a real bonus too. If there were a few things that I would expect to be done slightly differently it would be the following
Allow me access to the executables so I can actually play the demos – this goes a long way to impressing a reviewer
While the YouTube links are useful include the source files for download too as this gives more people access to the material and download speeds are generally not an issue
- More completed C++ projects would be a real bonus rather than some incomplete ones that may appear to be tacked on
Michael Stowell – http://stowelly.co.uk
Michael has a very nice range of demo’s available for download on his portfolio, some of which are on actual pieces of next generation hardware (obviously a benefit from attended University but one which should be highlighted). Content covering 2D to 3D work using a wide range of C++ API’s show that he is capable of working with new technology and new tools without too much trouble, and is also willing to try working in different areas rather than concentrating on what he knows. Each demo provides downloadable executables all of which worked out of the box on my basic run of the mill development PC. This is a real bonus and either shows Michael spent the time thoroughly testing his demo’s or is capable of writing good solid code from the off – both are desirable traits for an entry level programmer.
The only downside of the projects that are available is that some of them seem incomplete and unfinished so it may have been beneficial for Michael to concentrate on a couple less and adding polish to the remaining ones. This wouldn’t have gone against him as he would still have had a good range of projects on show. I would be tempted to say that the main project is possibly too big for a demo portfolio, especially when there is such a range on show and it isn’t a finished piece of work. A more focused and complete main project would probably go some way to making this portfolio complete.
Unfortunately, Michael has presented his work in a format that is less than suitable. While blogs are good for simple one off comments or projects they can be very difficult to navigate, especially when there are a multitude of links to other areas of his blog that are not, in the fullest sense, related to his portfolio. There are a lot of links to the right and top of the portfolio that simply clutter the page and make navigation difficult. This is only made more problematic by every project being in the same entry, so the reviewer has to scroll through multiple projects to get where they need to go – add to that the slim line formatting of a blog and there is a lot of information in a very small space. This proves to be a problem when adding images (which could be linked to rather then embedded) as there is so little space that some of the images are simply to hard to see clearly. As an example of the lack of clear navigation, it took a while but I eventually found links to videos for the various projects, which would only help Michael and should have been linked to with each project and each section.
As a quick over-view, Michael’s portfolio contains some very good work and shows off his ability in the field of game development. Unfortunately the presentation is less than ideal and can make a good portfolio seem less that it’s parts. If I were to suggest some improvements they would be the following
If you want your blog to be part of your portfolio, have a link to it and keep the portfolio separate
Categorize the projects – one project per page with clearer information and links to videos, screenshots and executables
Links to required API’s (if available) otherwise will downloadable executables run on everyones machines?
- Link videos and screenshots with the projects (again this comes down to format of presentation)
Steven Yau – http://yaustar.no-ip.org
Steven’s presentation is remarkably clear and well laid out. There is no additional ‘fluff’ that can make a portfolio hard to read and navigate, but with the inclusion of both strong colours and images the site has a really clear personality. As with the other portfolio’s he’s included different versions of his CV for easy access (even including a text file version) and his home page gives a short, but detailed enough over-view of where he is in his career.
His projects are of a suitable size of an entry level programmer with the Dance2X being something slightly different that the norm but interesting never-the-less, and along with the other, more game related C++ projects, his portfolio is diverse and can really showcase his talent. I think it makes it quite clear that Steven is interested in the game play side of game development and suits it’s purpose well. It’s also nice to see an explanation as to why content (executables, source code etc.) is not available publicly rather than simply not being there. I would argue that the ‘A Story In The Like Of Mike’ is simply not needed, this is a programming portfolio after all and this just takes up someones time when it is most likely irrelevant for the kinds of roles Steven is going for.
It could also be made clearer which projects were done as University work and which ones were done as side projects. While it is possible to figure this out, some explanation by simply grouping the projects could help and make the portfolio slightly easier to navigate.
Steven is actually active on various education sites in relation to games and wrote an article on how to break into the Games Industry. Unfortunately you wouldn’t know this from looking at his portfolio. While it’s not physical evidence of ability, being involved in these kinds of activities is a real bonus and should be advertised clearly alongside his other work.
If I was to suggest anything that needed changing on a portfolio like this it would be the following
Direct video links along side the YouTube links
Categorizing of his demo projects into languages or type
- Advertise the fact that Steven is active in the educational elements of the Games Industry
Jude Selvanayagam – http://www.jnselva.co.uk
From a quick glance at Jude’s portfolio you can tell he is primarily interested in technology based development rather than game side programming. The demo projects included in his portfolio are all feature based and don’t include any games what so ever (well there is one…) but for Jude that does exactly what it needs to do. Each project shows an aptitude for different techniques and areas of engine or tools development from physics to special effects and each one is finished to a good level showing the ability to follow through what he started.
Navigation around the site is very simple, though I would avoid calling something a ‘Code Dump’ or similar, as these are still valid projects and while not the flag ship ones for the portfolio are still present and should be highlighted in a positive manner. It’s good to see each project, from the main ones to the lesser ones, being given a short description and screen shots, but the particle system and cloth simulation projects should really have a collection of videos, especially as there are multiple downloads to go through if the reviewer wants to look at everything – and to protect against the demo’s not running on the host PC.
It’s quite interesting to see a ‘Highlights’ section on the main page, which again pushes you in the direction Jude wants you to go, showing off the projects that are the stars of the set and the ones that will hopefully land a good position at a games company.
I’m obviously going to comment on the art work which while absolutely stunning really has no place on a programming portfolio. Stress that you are interested in art and sketching on a CV and even provide a brief link to a showcase website but I would be tempted to remove it for the sake of this portfolio.
So if there were a couple of points I would probably recommend changing it would be the following
Could the projects be highlighted as University work and personal work to make the distinction clearer?
- The tools used for each project should be clearer. Language, API’s and methods used should be obvious and at the top – do we know what they were developed in without downloading the source?
Greg Santo – http://www.gregsanto.com/
Before I start I will admit that I think Greg’s portfolio is an excellent example of what a portfolio should be and how it should be presented. The first thing that is obvious is how the site is laid out, with the main page giving a good description of who Greg is and what this site is for. In a portfolio like this, which contains a lot of demo’s written in a variety of languages categorizing the titles by language is a real winner and allows people to go exactly where thy need to go, which means this could be used not only as a gaming portfolio but also one for a more traditional industry. As for relevant projects, while there is only one project that would spark an interest (it’s the Go! Kart one by the way), it’s of such high quality that other ones are simply not needed. All the required elements of a game are there from menu’s, music, level select screens and split screen multiplayer. But, and this is a big but for anyone reading this, creating such a big project is a risk. What if after a years development the project simply didn’t come together or was simply not of a good enough standard. In this case that obviously didn’t happen but for people looking to create portfolio work this is a big consideration to take when embarking on a large project.
As for the layout and presentation of the project, the main project page has everything you would expect, from nicely laid out code samples, a large amount of screen shots (this almost makes a video redundant but I wouldn’t ever go that far!) and something that I think really stands out, which is the challenges faced throughout development. Studios are always interested in people who can learn and tackle new problems, and this clearly shows that Greg has that ability.
Is there anything that could be improved? On the main page the line “you like what you see, or even if you hate what you see” is not a good one. You are selling yourself to everyone who sees your work, so while it can be a throw away line, always assume your work is excellent and assume everyone else will think so. Don’t go over-board, but never put yourself or your work down, no matter how tongue in cheek or light hearted it is.
So would there be anything I could possibly suggest should change? If there was it would be the following
- If the main C++ project was smaller, it would obviously be nice other game related projects were present, but in this case that is probably asking to much!
- The current project (the Physics Playground) would definitely benefit from some screen shots of work in progress, if they are available
So that’s it. I’ve finally finished what turned out to be a rather long look into what makes a programming demo portfolio, something which I originally thought about writing back in February. Hopefully it has been worth it for people reading this and that it clears up some of the misinformation and crazy rumors that generally circulate about what is required when looking for an entry level programming position in the games industry.
I’d obviously like to thank the above people who gave me permission to critique their work and their portfolios – without these, this part of the series would be a bit of a dead fish and wouldn’t have been as useful as it could be. And just to clarify what a good portfolio can do for you, here is a quick update as to what these people are doing right now (as of July 2008)
- Sean Carrica – University of Advancing Technology in Tempe, Arizona (Software Engineering with double majors in Game Programming and Network Security)
- Michael Stowell – Programmer at Creative Assembly working on Empire: Total War
- Steven Yau – Gameplay Programmer at EA working on the Harry Potter franchise
- Jude Selvanayagam – Technology Programmer at Blitz Games Studios working on BlitzTech
- Greg Santo – Systems Engineer at Pandemic Studios working on Mercenaries 2: World In Flames
Again, thanks for taking the time to read this, hopefully the next few posts will be a lot smaller, if only for my sanity.