This is a collection of test projects/assignments to use for interviews. They don’t need to be used as-is (or at all). They should be tweaked as needed and follow up changes added to them as necessary.

Feel free to add to this list by adding to it directly or suggest improvements in the comments.


Judging Criteria

  • How well it works.
  • Time to implement.
  • Quality of the code.
  • Attention to details.
  • Extras.

Senior #1 – Unity 3D

The requirements are quite straightforward. You are to dynamically compose and render a waving flag in 3D where the mesh is moving in a wave form (like a fabric). The texture on the flag should animate in pulses that animate from the center outwards. The artistic appearance of the texture or flag do not matter.

Finally, you are not allowed to use any 3D models. You are to generate the mesh of the flag yourself in code.

Senior #2 – Unity 3D

Build a Universal Windows 10 App that can post on your FB wall or send game requests to your friends (you pick one of the two to implement).

Standard #1 – Unity 3D

Render a curved cone with animated pulsating texture. The cone should start from the ground, arc up then reach the ground at a distance making an oval intersection with the ground. The pulsating waves move from the tip of the cone towards the base.

To help you imagine this in context, consider that you are firing a ballistic projectile with a gun that has some accuracy error margin. The tip of the cone is the gun, the section on the other side is the area where the projectile is expected to land (not a point, because it is not perfectly accurate). The curve mimics the area where the projectile can be, during its flight, as it goes up and down to the other end.

You are free to construct the cone however you want as long as it looks right.

Standard #2 – Unity 3D

Render a 3D sphere and allow the user to click and drag somewhere. As he drags, render and resize a circular dark section on the sphere starting at the point he originally clicked and ending at the point where the mouse cursor is currently dragging. The circular section needs to be curved with the sphere.

Junior #1 – Unity 3D

Create a dialog tree creation system. Include an example scene that contains a pre-built dialog tree. On playing the example scene, the player should see text and a variable number of clickable response options. On clicking a response option, a new set of text and response options appear.

On reaching the end of any dialog path, there is a single response option to replay the dialog. When selected, the dialog returns to the beginning of the tree and the only response options available are the ones the player selected the first time through.

The dialog tree does not need to be extensive and you may use placeholder text. With this system, a developer should be able to create a branching dialog tree (in Unity or via an external file) without modifying code. Your example scene should be created in this fashion.

Junior #2 – Unity 3D

Create a 3D shape generator program. The user sees a cube in black in the center when the program starts. There are two controls on the screen and a button. The first allows him to change the shape between cube, sphere, and cone. The other allows the user to change the color of the shape. Once he is happy with the shape he pushes the button to “save” it which results in a small copy of that shape getting created and placed somewhere else on the screen in a list (or grid). The user can then continue to customize the main shape and save more instances that go into the same list.

Senior #1 – Azure

Create a simple program that just writes the time to file every 30 seconds.

Write some trivial unit test.

Automate build such that when requested, the project builds, tests the unit tests, and if they pass, deploys the program to an Azure cloud service.

Senior #2 – .NET

Write the AI for a ship that moves randomly, and if it is within range of another enemy ship, it should follow it and fire every 5 seconds as long as it has more health. Otherwise, it should fire but run away from it. If there are multiple ships, just pick one target at random and apply the above logic to it.

Standard #1 – Azure

From a simple program running on a cloud service, log custom logs traces that include text and some parameters to somewhere on the cloud where they can be easily analyzed when problems happen. (Hint: Look into Azure Diagnostics and AppCenter).

Standard #1 – .NET

We have our own Property class that holds properties of different kinds to send to the server. This type gets serialized when sent over the network. We have serialization implemented for all basic types. However, it is broken for lists. A list is a Property instance that contains other Property instances. Your task is to correctly implement this serialization/deserialization using JSON.NET.

Standard #1 – ASP.NET

We have a web API that returns information about in-game consumables. Your task is to take the data from this API and render it into an ASP.NET web page. The data should be shown in tabular form, one row per consumable. There are two things that deserve special attention:

  1. The Icon property should render the icon at the specified URL.
  2. The fields that include text in braces are references and need to be resolved by extracting their value from the properties with the same name. For example
    “value”: { “resource”: “Credit”, “amount”: 1000 },
    … ,
    “valueFormat”: “{Value.Amount} {Value.Resource}.”
    Means that when we display this field we use the format above (two values separated by a space) and the text to display is amount component of the “Value” property followed by the resource component of the “Value” property in the same JSON blob. The end result would be “1000 Credit” in the table.

This is the API: (Swagger:!/ShopCatalog/ApiShopCatalogConsumablesItemsGet)

Junior #1 – Azure

Configure a cloud service on Azure to use two separate storage accounts/tables based on whether it was deployed to staging or production. Ideally, you will do this without changing the code.

Junior #2 – Azure

Configure a cloud service on Azure to deploy different files based on whether it was deployed to staging or production.

Intern #1 – .NET

The user’s Facebook username is sent to the server on authentication. This could be too long, so we need to truncate it to be less than 20 letters. If there are spaces near, and before, the 20 letters-mark, we should truncate there instead.



Author Lotus
Categories HR
Views 211
War to the Core

Recent Comments

Latest Updates

  • Solo missions

    Solo missions

    Hey guys, here are the specifics of the first two solo missions, those are sketches of the first two missions. First mission: A harvester is placed near the ship, generating supply caches. The player collects energy caches and escapes a ring of mines. No supply links allowed. The sensor component is introduced by one of […]Read More »
  • We made it to the Top 100!

    We made it to the Top 100!

    We are stoked that we managed to land on IndieDB’s Indie of the Year’s Top 100 list! We are also the only MOBA that made it to the list! The support we got from the community was overwhelming, and we would like to thank each and every person that helped us get this far. Whether […]Read More »
  • Full Campaign Series, Version 3

    Full Campaign Series, Version 3

    Characters: Daniel Blaze. Protagonist, player-character. Headstrong and rebellious. Ambiguous loyalty to the Shepherd Coalition. Joseph Blaze. Father of Daniel Blaze. Commander of the Leviathan mothership until executed for treason by the Shepherd Coalition. Sylvia. AI assistant. Provides intel, advice, mission objectives. Captain Zhukov. Cyborg commander assigned to hunt down player during the first several missions. […]Read More »
  • Story: Episode 1, Version 2

    Story: Episode 1, Version 2

    The Blaze family had long been controversial. They supported the Shepherds, but continually frustrated the Orthodox elements of their faction. Joseph Blaze was especially known for his tolerance of the weakling families that used genetic engineering to alleviate the sicknesses that exposure to the Earth’s surface had inflicted on them. Such tensions between orthodoxy and […]Read More »
  • Story: Episode 1

    Story: Episode 1

    Location: The Pole Base. When Daniel Blaze passed his final test and became the primary candidate to pilot the Leviathan, the Shepherds’ newest ship, he caused a quite a stir. Not because he’s the youngest member of the Pole fleet to be nominated for admiralship, the faction had already made peace with this as a […]Read More »
Skip to toolbar