Yegor Naumov, JetBrains | AWS Industry Technology Partners Showcase S1E2
[Music] hello welcome to this Cube's presentation of the AWS industry technology partner showcase this is season 1 episode two to kickoff the series covering the partners from mw's ecosystem we're talk about enabling Global collaboration in game development obviously gaming is huge we see a lot of activity obiously got to be coding those games as well timelines cicd pipelining all part of the cloud native I'm joh fur your host and we're joined here by Yar NM head of Team City growth and marketing at jet brains a lot of developers using that software Yar thanks for coming on the uh Tech partner showcase hi John thanks for having me happy to be here so I want to talk about improving game development velocity through optimizing safy pipelines and developer productivity that's the topic um obviously game development um similar process you got to code you got to write code um things are changing radically it's a lot more velocity in terms of expectations it's hard like any software you're deal with large files you got a lot of things going on take us through the high level points of what's going on in game development right now for the folks out there who who are uh in the in the trenches the folks who are trying to figure out the best tooling best platforms best use cases as it's got Global teams all around the world working on these things take us to the high level points yeah um happy to do that so we are jet brains are generally focused on providing the best best experience for software developers and software development teams and we see game development as an industry as a very important part of that for obvious reasons it's a huge industry but also it's as you said it's in a lot of our hearts uh that we're we love gaming ourselves and we love to be helpful to to those who develop the games um um and as much as it's it's special it's it's the first of first point is that game developers are software developers but there are certain specifics to think about you already mentioned large files that's one part of that and this actually stems from the fact that the game development teams as opposed to some other more classic development teams they have to work closely with uh you know tightly with teams of artists and game designers and other professionals that are not so commonly uh seen in the other in some other Industries and that leads to obviously um yeah artwork being a large part of the of the pipelines um and that leads to large sizes of repositories files projects uh which brings additional challenges that I think we'll touch on um in our conversation today um there's obviously also a higher Reliance on vendor controlled core software such as game engines uh and now we're in the you know in the era of game of of game commercial game engines such as Unity Unreal Engine godo uh and some other ones as opposed to maybe 15 years ago when everyone was building their own game engines um and this brings additional benefits to the game developers but also obviously some challenges and limitations in um um the the scope of work that they're doing and how they're potentially even limited sometimes uh by that and the third Point here is uh I would I would mention here that um a lot of the release process and I'd like to talk about the release process because I'm the team City team and we make it happen uh for for for the teams um it is often also dictated and sometimes restricted by Third parties such as Publishers such as hardware and console manufacturers um and this there's even it's game development is one of the few Industries out there that has this real life physical component of releasing their software on DVD CDs uh and you know U Distributing them through uh regular stores not a lot of indes that still do that but um came developing certainly one of them um and obviously with the rise of um online gaming massive uh RPGs this is this is not the case but we still have huge triaa um titles that do run on consoles and that do need to deploy that way so all those challenges and specifics are important to to highlight when we talk about game development um but I'm going back to my first point game development is still software development it's awesome and absolutely and a lot of stakeholders as you pointed out we're going to unpack that before we get into it just quickly introduce what team cities is how that product is what you're overseeing that's the key to this bringing everyone together what is Team cities team City product right so team city is a continuous integration continuous delivery platform that allows for building U build test and release pipelines um and automating and orchestrating the whole process of what happens after a developer makes a code change and commits it to repository um there's depending on what the company is doing depending on what the team is doing depending on what we're trying to achieve and the process in place team City can be a lot of different things but generally it's a platform that allows um we are talking about productivity and team velocity today and uh I like to think of it as a platform that allows to through improving uh Team productivity it allows to increase the velocity of the release cycles for for the teams um and uh yeah I only we are only talking within the scope of Team City but generally jet brains provides like everything that jet brains does um it it kind of boils down to improving the the productivity and efficiency of a single individual developer and team City brings that to the to the team level uh helping teams deliver value quicker you brought up earlier about the stakeholders you art you know you brought up there's a lot of storage probably involved you have different stakeholders um you got different platforms a lot of things a lot of moving Parts in the process um take us through the developer productivity elements here um and how that affects the Velocity in the game devel overall and and highlight kind of what team city does because I think this is the key here it's I mean it's for development but imagine the dimensions of stakehold it's almost like 3D chess going on here it's like a lot of things happening um take us through those aspects of the moving parts and how that impacts productivity yeah exactly and I think we it's it's it's good to start unpacking this from from generally what developer productivity is why it's so important and I think the business aspect of it is that um it is so important because software development uh cost as part of the whole budget of a project is uh estimated to be over 60% depending on the project size and the project specifics might might differ but generally it's a huge chunk of the whole budget so improving developer productivity helps us either to cut down these costs or to improve efficiency and the amount of value delivered within this within this budget um and uh it's not only about business and at jetbrain specifically we like love to think about developer prod productivity as a way to increase developer happiness and it's hard to put a specific number of on on developer happiness but um there are some researchers that that that state that on a good day um a developer could be up to 49% more productive and produce more value so I see our our mission is to increase the number of those good days uh in the in the developer uh in team Lifetime and generally we go from developer productivity to team productivity but it's important to know that understand that uh tooling is quite important to improve that efficiency and this is where we come in uh we uh uh we see within the te team City scope we see that the cic city process um is sometimes crucial to not only team productivity but also individual developer efficiency simply because whenever a developer even if they're being extremely productive produce a unit of work and then commit their code change into the in the repository then the cicd process kicks in it does the automatic build it does the automatic testing it does the deployment to a production or staging environment but ultimately the whole idea of this c c process is to provide feedback to this developer on the change that they have produced and if this feedback is being provided not in a timely manner this breaks the whole developer workflow uh it makes them switch context and context switching is extremely uh extremely uh damaging to the to the focus to the to the developer flow and thus it leads to a lot of overhead um if this context uh is being broken so what we focus on is to be able to provide to kind of fix this problem of long feedback Times by um paralyzing by Pro providing the value as fast as possible to to the developer and this is by the way where the the whole Cloud um story comes in because cloud is one of the enablers of how we can improve the speed of this of this feedback cycle and providing the the result of the changes back to the developers in the most efficient manner um and there's a number there's a number of approaches that here but yeah let's let's let's unpack a little quick I love the two aspects here the individual developer productivity in context to the team by the way because most a lot of virtual coding opportunities as well again stakeholders so you got the the developer in context of the team and the group and then the tooling and the platforms question for you real quick if you don't mind me asking since you're here is there a balance between that where this optimization focus on either side how do you see that how do you talk to that piece because this context switching point is huge because you know you have different personalities maybe different categories of tinent developers we got art you mentioned art people art folks different stakeholders talk about this context switching dilemma because if that happens you can see that things slow down people aren't as productive talk about the boun tooling optimization what do you optimize for most how's that Balan take us through the mindset there yeah I don't think there's any dilemma here the less context switching the RIS the the more productive we are as a team and we are as as individual developers and um yeah don't get me wrong there's there will always be context switches it's just a question of how how to minimize those so I think the the important factor when we talk about um tooling like continuous integration tooling is to uh make sure we can reuse uh large portions of um of those build pipelines and make sure we we don't do unnecessary work and this is something we focus a lot within the team City scope we love to reuse the the what we call build chains but they're actually like build pipelines um and if if if something can be if some components don't need to be rebuilt rerun and the results of the previous runs could be implemented to the to fit the existing um launch of the pipeline then we will do that another aspect is paralyzation and again I mentioned that uh this is where the cloud Technologies and the ability to spin up as many as many compute units as possible comes in um because if you're running you know a set of one hour long um several hundred or thousand tests for for whatever build you're running um you can wait for one hour or you can split that in in chunks of 10 or six and and wait for 10 minutes instead of 1 hour and again the the ability to have this almost virtually unlimited uh computer power uh to do that is is what enables um increases the this the speed of this delivery I was gonna ask you there additional mechanism yeah go ahead I was goingon to ask you what the cloud was as an enabler for game development team velocity is that one is that the main one paralyzation is there any other enablement that comes from the cloud yeah so um paralyzation is certainly the the most uh visible piece by by um by by the end developer but generally there's also the aspect of uh having less Administration by the it it team having the you know more democratized approach to to uh getting access to additional resources uh we mentioned artifacts and large files being transferred for game development and this is also that could be handled with a cloudbased artifact storage uh and uh storage Management Solutions it's not only about stories it's also about transfer and you know back in the day um but even still in some of the industries you need to transfer large blocks of data sometimes you know um through physical means through shipping them with fed or DHL uh but now there's solutions that obviously help to avoid that and in addition to that cloud allows us to build um more resilient Solutions uh to transfer data and there are options to um minimize costs and to everything comes down to either additional costs or additional value and I think sometimes we we would like to minimize the the cost factor and actually in one thing we do in team city as an as an example of this is um this is especially relevant and very much appreciated by the remote game development teams that have U uh software development teams in different locations geographically um is to minimize cost of transfer of data between different regions between different AWS regions we actually implemented a cever mechanism that if if there's a request for this for this artifact or a large file from a different region we would we would Source it not directly through S3 but through a cloud front front CDN that reduces the cost to the team significantly uh keeping the the the velocity at approximately the same level that's awesome the build times aren't compromised costs are reduced on instead of moving all that big data around uh the regions good good good hack there love that um that not w't say hack but good addition um I got to ask you about the platform engineering conversation that's the hottest conversation we've had in on the cloud native Community right now the future of devops is a lot of platform engineering you got the roll of data you mentioned that what is the future of devops in game development how do you see the connection you obious see more and more scale um you got build times Version Control testing simulation more and more metaverse coming more and more game engines being embedded into the future user experience and expectations I mean I just see this kind of being the center of kind of UI and ux uh for our future exactly that's a great question I love talk about the future of devops in within the game development uh scope and I think one of the um there's there's some more obvious things that are going to happen or already happen happening such as the continuous Integrations for integration for games and then if previously game patches and updates were kind of released in larger chunks now it's a more fluid process uh and develop developers can make and deliver changes to production um almost in real time same goes for infrastructure code approaches that is also made its way and I don't think it's already the future it's probably something that's already happened for the for the most part um I love the idea of uh um thinking of you know live Ops so something um that that could be getting a more increasingly crucial role within the game development scope um this is uh this has to do with post launch updates improvements uh and expansions B based on player feedback analytics uh and some other metrics in in essentially real time and I would also highlight um uh something that might be uh left out during when we talk about devops and cicd but something that is becoming more and more crucial and just mind-blowing to me and that is player driven development so with platforms like like roadblocks it's already happening and you know the the the the boundary between a developer and a player can sometimes become blurry and I think we'll see more of that and I would love to explore how deox practices can actually facilitate this co-creation sort of speak process yeah uh that allows you know player generated content to be seamlessly integrated into the same uh build test release pipelines for the games yeah probably the future of speed of thought I mean soon we'll be thinking about gener of AI I mean that's why I want to get to this next question is because I think you beautifully teed that up the role of gener of AI is not just from an observability and optimization standpoint from the platform engineering side there's an in-game development aspect that could be featured um where in real time generating experience is is going to be something that's going to be looks pretty obvious to me at least from a gaming standpoint natural progression um that's going to be really really hard how do you see the role of generative AI in the in in in-game development so in-game and in-game development so you got to develop the game and also ingame development I could see that being compelling yeah absolutely and I think generative AI has been top of mind for many of us in 2023 uh and yeah I I was thinking bit it about it in terms of game production and game development and I think and we already start seeing first first steps first Concepts and first games that have been actually created if not by um geni but then but then with with with a lot of help from geni and I think this is what is going we're going to see more and more of uh is that generative AI will augment and extend both the artist side of the of the team and on the engineering side of the team I don't really believe in it's going to replace the any any of the any of the team members it would rather increase that velocity that we been speaking about and and and kind of blur the lines again between the the the different departments like similar to how um you know the the availability of cloud Technologies and the ability to you know spin up resources somewhere remotely at one API call has blowed the line between Dev and Ops teams I think we'll see similar similar effects of the Gen AI within the artist developer uh kind of uh communication and production and this will obviously um uh or not obviously I think this doesn't necessarily mean that this would lead in terms of production that this would lead to reduction in cost of production because we might not fully understand it yet but uh operational costs of AI generative AI are quite high so we'll need to take that into account when we incorporate AI powered or AI agents within the game development teams uh yeah you got chat Bots you got co-pilots you got predictive that's the hot areas right now I can see that translating over with more more features I got to ask you about this more nerdy stuff around Cloud NAA because when I think about like data I think about state of data I think about versions of data what's Real Time versus you know past in real time so how do you see like the game logic and State play in here because now you got game State you got logic you're going to be in the cloud you've got microservices you got a Services model in the cloud that must give you guys a little bit more visibility into how to use the data better how to manage the state what's your how do you look at those two areas yeah I think you said it uh exactly right there's going to be much more data produced and there's going to be much more data to not just look at I don't think it's it will be possible to look at with a human eye uh we will actually have to imply um employ uh a lot of the machine learning um algorithm as and opportunities to um to extract extract insight extra value out of that data and I think it has to do it ties back into the development life cycle quite quite nicely and it goes back to that live Ops discussion of can we can we take live game data or player data or player Behavior data and transform that into a product and build that into the uh build test release and the cicd pipeline deliver the value almost instantaneously or at least in a continuous manner so I think data will play an inre increasingly important role here um from from from the standpoint of developing life cycle and um this goes into of course the this will also power the or empower the developer um by giving them a lot of insight into how their code how their the the work value that they're producing is is affecting the player yeah I think AI gaming two hot areas for if developers are out there watching if you're not into it if I was in my 20s I'd definitely be doing it for sure um two hot areas eor I love love the conversation um talk about team City jet brains what's on the outlook for the product side you're you're seeing some growth you're seeing some traction whole another Next Generation developers are coming in you you hit on some of the the trends around how games are changing inherently which is awesome um a lot of lines blurring a lot of stakeholders a whole another generation coming what's the Outlook oh yeah it's it's it's a very exciting time I think for all of us but um also within the from inside the jet brains it looks quite exciting they're a lot of the new products that are being either brought to the market right now are being worked on at the as we speak I think one of the hotter ones are AI is our AI assistant uh that is currently available and as a limited access product within the our intelligent integrated development environments um you could get access to that there's also a whole growth of products and solutions that has been developed for the remote development Solutions and giving the ability to the developers to you know connect to a remote environment and get bigger uh resources buffier machine and things like that there's also a scope of Enterprise solutions that we're currently bring into Market that will improve the efficiency of managing your of your development tooling on the Oru level and as for team City we're currently working on a platform that that a code name of Team City pipelines that will streamline the the Bild test release pipelines for the Developers for the game developers um by bringing in built-in intelligence and uh that would Target the you know that would have the efficiency and saving costs uh in the process as the as the core aspect of the of the product so we yeah we're looking forward to all new um products and improvements that are going to come out really soon and uh game developers are one of our one of their our favorite types of customers simply because they love to push the envelope to the Limit and they love to they love to use the most out of their out of our tools and out of all the Technologies so I personally life love the game development Market before that yeah it's super cool I wish I was a good gamer like I was in the old days um not as fast as my reflexes um plus I'm a keyboard but the keyboard's back but anyway great to have you on Final questions to end the segment you know with cloud and this next gen one of the things people always want to know about is what's the heavy lifting that gets abstracted away so that people can focus their Creative Energy on um doing what they love which is building what would you say when people ask you what is the big thing that's happen happening uh in your world around taking that undifferentiated heavy lifting and making that kind of go away with Cloud Technologies and the new tech yeah yeah I would say I would say compute I would say that unlimited paralyzation the the lack of necessity to manage so many uh agents and and think about the all the compute hardware and that you need to spin up for for your workflows and I think this gives the development teams the almost ability to run as many as many build pipelines they they'd like and to increase the velocity of the of their software development almost instantaneously and almost unlimited uh so I would say that's the big point from from my perspective from within the cicd scope of things um so yeah I love it because of that youer thanks for coming on youer nma head of Team City growth and marketing at jet brains here on the AWS technology Partners showcase season 1 episode 2 youer thanks for coming on really appreciate your time and and for the folks thanks for watching see you next [Music] time
2023-12-23 14:43