Hi there, I’m Jacob Sobolev. I have a huge passion for video games and have been playing them as long as I can remember myself. I have been working full time in game development\desgin\programming since 2014 and ran a startup company\game studio for 3 years. I created this website, Gaming Shift so I can share with you my love of gaming and experience with game development.
If you are interested in gaming or game development you are in the right place. I’m here to give you the best information I can on gaming and game development whatever you are just started or already experienced gamer \ game developer.
You can follow me on social media or contact me whatever is on your mind, question, remark, suggestion. I will try to respond as soon as possible.
How It All Began
It was back in 1996 that my family and I, along with some friends, went to the local mall. It was probably my first time visiting the mall. After we ate and did some shopping, the parents decided to take us, the kids, to the arcade section. As we were going down the escalator an entire floor of arcade games was revealed to me.
There was everything starting from bowling, air hockey, basketball, coin dropping machines to a huge amount of arcade video games. And I was only interested in video games. I was so mesmerized by the video games that I wanted to play all of them on the same day! I loved every kind of game there was in the arcade, including from the house of the dead, street fighter 2, and a tank simulator “desert tank” made by sega. The time flew by and at the end of the day, our parents had to drag us out of the arcade.
My First Gaming Console & PC
The days in the arcade center were amazing! However, we were not able to go there each day. Besides, playing all those games cost quite a lot, since many of them are rigged so you will lose a lot more than you are supposed to. So as a present, my mom got me and my brother the Sega Genesis.
We were so excited when we first opened the box and connected the devices to the TV. We had two games that came with the console: Fifa 96 and a WWF game. Later on, we bought some more – Sonic The Hedgehog and Jungle Book. The experience I had playing those games was unforgettable, especially on rainy days. I can remember like it was yesterday, playing for hours trying to finish “The Jungle Book” on a single day, but this game was hard!
At that time buying a computer started becoming a common thing, and almost every household had one. So after some hard convincing, we got our first PC. If before I was excited about the Sega Genesis, this was a whole new level of excitement. Because of a simple fact that I could play even more games at a lower price. With a new PC, we received a CD disk that had 100 games, this was 25 times more then we had on the Sega. I spent the following days, weeks, and years exploring the huge amount of games I had. To this day, I prefer PC gaming over other forms of consoles \ handhelds.
The years have passed and I spend a lot of time playing video games. Sometime during middle school, I decided I wanted to make games that will influence others as they did me. I still didn’t know how to combine all of the pieces to make a fully functioning game. But I knew that one of the most important pieces in game development had to be the code.
Which is why from that point, I decided to take the path of a programmer, and for the upcoming years of study, I majored in programming and computer science. That started in high school and progressed to college where finally I got my B.s.c in computer science.
My Game Development Journey
When I first began learning programming at high school we started learning Pascal and some other languages like Assembly. We mainly focused on learning the languages through solving problems with command-line text programs. At that time I didn’t really understand how I’m supposed to create graphical games with the knowledge I had.
My First Games
It was only at college when I created my first games. There were several courses we took that taught us Java. We learned the basics with terminal applications and moved to desktop window applications which included creating UI and drawing images in a window, etc. Later on, we learned JME which is a Java version for embedded devices like mobile phones. I’m not talking about smartphones, but phones like the Nokia 5610.
As a final exam for this course, we had to create an application and of course, I wanted to create a game. At first, I tried to create a desktop game of Go and quickly realized that it wasn’t a simple task because I had to understand all the rules of the game and create a computer-based opponent to play against, sort of AI. So for the second try, I thought it would be cool to create a mobile game for my Nokia 5610.
As usual, I was so excited about creating games that I aimed extremely high and had to learn a lot of material on my own as it wasn’t covered within the course. I chose to create a replica of an old DOS game SkyRoads which I enjoyed playing as a boy. This wasn’t an easy task at all, everything was in 3D and I had to write my own physics engine. In the end, I managed to create a fully working application with one level with music and sound effects and everything.
Advancing In-Game Development
For my Bachelor’s degree, I tried to take as many courses that I could that were related to game development. I managed to take in-depth C# courses and monoGame(a game development framework). But the most challenging courses were AI and Computer Graphics. As usual, I was ambitious so I had to learn a lot of material beyond the scope of the course. For the AI project, I created an AI that solves the magic square sliding puzzle. This puzzle usually found in 3*3 size but the hardest thing was to create it in any square size. The source code is available on Github and you can still check this game here. For the computer Graphics project, I created a sort of game engine in OpenGL which included loading 3D objects and applying textures, creating light, writing shaders, etc’.
Working As A Freelancer To Running A Startup
I first started working as a freelancer during my Bachelor’s degree study, creating games for clients. I worked on a bunch of stuff, whether it was mobile games using unity or web games using construct/phaser. I worked for about 2 years creating games for local clients.
Later on, an opportunity came to be a part of a startup that had an aspect of games. The startup was about creating a mobile application for Android and iOS which was a social network and a gaming platform all in one, we named it “Playsive”. Players would be able to play the games, gain levels, see their friend’s activity, and comment on them, like, and much more. You can see the concept of the game in the following video:
At first, I was to be assigned as lead developer on the gaming components of the startup but the other developer who was with me dropped and I had to pick up all the aspects of the development and thus I became the CTO of the startup. This wasn’t an easy task, there were a lot of challenges, both from a technological as well as financial standpoint.
I have spent countless hours at the office and at home working on the startup. Either I was working on the project myself or I was managing other developers, most of whom were offshore. After a lot of revisions and changes, we finally released an Android version. But as in all development, there are unexpected issues, and the Android version didn’t work out to be all that great. In addition, we needed to develop an iOS version. After a lot of convincing, I managed to convince the CEO to develop the application in React Native and scrap the old version, which was my idea from the start, but at the time I couldn’t convince him no matter what.
The months went by and the new version of the application was finally ready, everything worked extremely better and it was time to publish it on iOS. Unfortunately, after a lot of revisions, we couldn’t get the application approved on Apple due to violating their guidelines. The hardest part was not being able to know the exact issue with the application and I had to guess what it was. But I wasn’t ready to give up just yet and I had a feeling that Apple didn’t like the application because it reminded them of the AppStore.
Thus, I decided to try and break up the application into separate games with the social components in them. However, the CEO didn’t believe in the product in that form, and unofficially stepped down and wasn’t involved at all. So, I had to take part in raising the capital, in addition to my other tasks.
Towards the end, we managed to release 6 games for both Android and iOS with social comments for the old application in them. We got 10K downloads on each game with a minimal advertising budget and we had an investor who agreed to fund us for the next 6 months. At the last moment, he changed his mind and after 3 years we had to close the company. In those 3 years, I learned a lot, experienced a lot of hardship, and extremely rewarding moments as well and in the end, I still consider this a very rewarding experience.
After some time off, I decided to open this blog so I could share my experience with game development and gaming that I adore so much. So I could help as many of you as I can whatever you are a gamer or game developer, or maybe even both.