PageSourceSearch

https://grip-studios.com/hiring.php

html grip-studios.com collected 2026-10-08 19:58:17 UTC 23,669 bytes, 353 lines download raw bytes

1<!DOCTYPE html>
2<html land="en">
3    <head>
4        <title>Hiring | Grip Studios</title>
5
6        <link rel="canonical" href="https://grip-digital.com/hiring.php">
7        <meta name="robots" content="index, follow">
8
9        <meta name="title" content="Hiring | Grip Studios">
10        <meta name="description" content="Grip Studios is a full-range game developer with over a decade of experience and 50+ games in our portfolio. We provide co-dev, QA, and other development services to some of the world’s top gaming companies.">
11
12		<link rel="preload" href="https://player.vimeo.com/api/player.js" as="script">
13
14        <!-- Facebook meta tags -->
15        <meta property="og:title" content="Hiring | Grip Studios">
16        <meta property="og:description" content="Grip Studios is a full-range game developer with over a decade of experience and 50+ games in our portfolio. We provide co-dev, QA, and other development services to some of the world’s top gaming companies.">
17        <meta property="og:image" content="https://grip-digital.com/assets/share/share1200x630.jpg">
18        <meta property="og:url" content="https://grip-digital.com/">
19
20        <!-- Twitter meta tags -->
21        <meta name="twitter:title" content="Hiring | Grip Studios">
22        <meta name="twitter:description" content="Grip Studios is a full-range game developer with over a decade of experience and 50+ games in our portfolio. We provide co-dev, QA, and other development services to some of the world’s top gaming companies.">
23        <meta name="twitter:image" content="https://grip-digital.com/assets/share/share1024x512.jpg">
24        <meta name="twitter:card" content="summary_large_image">
25
26        <link rel='stylesheet' href='assets/css/style.css?v=20260825b'>
27        
28        <meta name="viewport" content="width=device-width, initial-scale=1">
29        <!-- Fonts -->
30        <link rel="preconnect" href="https://fonts.gstatic.com">
31        
32        <!-- Cookie Consent by https://www.FreePrivacyPolicy.com -->
33        
33<script type="text/javascript" src="//www.freeprivacypolicy.com/public/cookie-consent/4.0.0/cookie-consent.js" charset="UTF-8"></script>
33
34        
34<script type="text/javascript" charset="UTF-8">
35            document.addEventListener('DOMContentLoaded', function () {
36            cookieconsent.run({"notice_banner_type":"simple","consent_type":"express","palette":"dark","language":"en","page_load_consent_levels":["strictly-necessary"],"notice_banner_reject_button_hide":false,"preferences_center_close_button_hide":false,"page_refresh_confirmation_buttons":false,"website_name":"Grip Digital","website_privacy_policy_url":"https://www.grip-digital.com/privacy-policy.php"});
37            });
38        </script>
38
39        <link rel='stylesheet' href='assets/css/cookies.css'>
40        <!-- End Cookie Consent -->
41
42        <!-- Google Tag Manager -->
43        
43<script type="text/plain" cookie-consent="tracking">
vendor: 359 bytes, lines 43-47
43(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
44        new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
45        j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
46        'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
47        })(window,document,'script','dataLayer','
47GTM-KT5B3LB
vendor: 3 bytes, line 47
47');
47</script>
47
48        <!-- End Google Tag Manager -->
49
50        <!-- jQuery scripts -->
51        
51<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
51
52        
52<script type="text/javascript" src="./assets/js/functions.js"></script>
52
53        
53<script type="text/javascript" src="./assets/js/underline-text.js"></script>
53
54        
54<script type="text/javascript" src="./assets/js/position-expand.js"></script>
54
55        
55<script type="text/javascript" src="./assets/js/wm-animate.js"></script>
55
56        
56<script type="text/javascript" src="./assets/js/smooth-scroll.js"></script>
56
57        
57<script type="text/javascript" src="./assets/js/navigation.js"></script>
57
58        
59        <!-- Favicons -->
60        <link rel="apple-touch-icon" sizes="180x180" href="assets/favicons/apple-touch-icon.png">
61        <link rel="icon" type="image/png" sizes="32x32" href="assets/favicons/favicon-32x32.png">
62        <link rel="icon" type="image/png" sizes="16x16" href="assets/favicons/favicon-16x16.png">
63        <link rel="manifest" href="assets/favicons/site.webmanifest">
64        <link rel="mask-icon" href="assets/favicons/safari-pinned-tab.svg" color="#000000">
65        <link rel="shortcut icon" href="assets/favicons/favicon.ico">
66        <meta name="msapplication-TileColor" content="#000000">
67        <meta name="msapplication-config" content="assets/favicons/browserconfig.xml">
68        <meta name="theme-color" content="#000000">
69
70        <!-- Splide -->
71        
71<script type="text/javascript" src="./assets/js/splide.min.js"></script>
71
72        
73        <link rel='stylesheet' href='assets/css/splide-core.min.css'>
74        <!-- <link rel='stylesheet' href='assets/css/splide-default.min.css'> -->
75        <!-- <link rel='stylesheet' href='assets/css/splide.min.css'> -->
76
77        <!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 73 bytes, lines 77-79
77
78
79        <script async src="https://www.googletagmanager.com/gtag/js?id=
79G-SV6PKLHK70
vendor: 64 bytes, lines 79-80
79" type="text/plain" cookie-consent="tracking"></script>
80        
80<script type="text/plain" cookie-consent="tracking">
81            
vendor: 163 bytes, lines 81-84
81window.dataLayer = window.dataLayer || [];
82            function gtag(){dataLayer.push(arguments);}
83            gtag('js', new Date());
84            gtag('config', '
84G-SV6PKLHK70
vendor: 12 bytes, lines 84-85
84');
85        
85</script>
85
86    </head>
87    <body>
88        <div class='navigation navbg-transparent navcolor-black mobilenav_black wm-animate wm-ol-hide  wmab-fadeIn wmab-menuslidedown' data-wman='fadeIn menuslidedown' data-wmdl='1000' data-wmol='1'>
89            <a href='index.php' class='left-side'><img class='logo-img' src='./assets/img/logos/logo_white.svg' alt='Logo'></a>
90            <div class='right-side'>
91                <a href='projects.php' class='projects-link'>Projects</a>
92                <a href='contact.php' class='contact-link'><span>Business</span></a>
93                <a href='hiring.php' class='hiring-link'><span>Jobs</span></a>
94                <a onclick='openMobNav(); return false;' class='mobile-burger'></a>
95            </div>
96        </div>
97
98        <div class='mobNav'>
99            <div class='mobNav-content'>
100                <a href='hiring.php' class='hiring-link'><span>Jobs</span></a>
101                <a href='projects.php' class='projects-link'>Projects</a>
102                <a href='contact.php' class='contact-link'><span>Business</span></a>
103            </div>
104        </div><div class='hiring-page'>
105    <div class='white-bg'>
106        <div class='main-text-block text-block-white-bg section-text-1 text-content-width wm-animate wm-ol-hide' data-wman='transformslideup fadeIn' data-wmdl='200' data-wmol='1'>
107        <p>
108        We believe that <span class='purple-underline wm-animate' data-wman='underline' data-wmdl='500'>our team is the 
109        most valuable asset of our </span>
110        company. That is why we look for 
111        the best talent and offer the best 
112        opportunities in the <span class='purple-underline wm-animate' data-wman='underline' data-wmdl='800'>central Europe 
113        region</span>. From work-life balance, to 
114        some of the most exciting gaming 
115        projects in the world.
116    </p>
117
118    </div><div class='big-video wm-animate' data-wman='videoSmaller' data-wmod='90'>
119    <video playsinline muted autoplay loop preload='auto'>
120        <source src='./assets/videos/asshole-free.mp4' type='video/mp4'>
121    </video>
122</div>    </div>
123    <div class='black-bg'>
124        <div class='section-text-2'>
125    <div class='asshole-free'>
126        <div class='asshole-free-header'>
127            <div class='header-content'>
128                <div class='line-1 wm-animate' data-wman='rsHeader' data-wmsm='0'><span>Asshole</span></div>
129                <div class='line-2 wm-animate' data-wman='lsHeader' data-wmsm='0'><span>Free</span></div>
130            </div>
131        </div>
132    
133        <div class='main-text-block text-block-black-bg text-content-width wm-animate' data-wman='slightslideup' data-wmdl='200'>
134                        <p>
135                Grip has <span class='purple-underline wm-animate' data-wman='underline' data-wmdl='1000'>two development sites</span> 
136                located in the spectacular Green 
137                Point at Anděl, Prague, and cool offices
138                in the city center of Brno.
139                With free amenities like coffee and 
140                parking and within walking 
141                distance to the center of the 
142                respective cities. 
143            </p>
144        </div>
145    </div>
146</div>
147<div class='two-images text-content-width'>
148    <div class='images-container'>
149        <div class='one-image image-left wm-animate' data-wman='imageGoingUp'>
150            <img src='./assets/img/2-img-vlevo-hiring.png' alt='Muž se žtenou sedící u stolu s notebookem'>
151        </div>
152        <div class='one-image image-right wm-animate' data-wman='imageGoingDown'>
153			<img src='./assets/img/2-img-vpravo-2.jpg' alt='Muž v office'>
154        </div>
155    </div>
156</div><div class='main-text-block text-block-black-bg text-content-width section-text-3 wm-animate' data-wman='slightslideup' data-wmdl='200'>
157        <p>
158        Our team is hand-picked to 
159        combine skill & friendly attitude to 
160        create our unique, asshole-free 
161        company culture. We have a cool 
162        working environment, but are also 
163        cool with home office. <span class='purple-underline wm-animate' data-wman='underline' data-wmdl='1000'>You can 
164        make working for Grip a part of 
165        your life</span>, instead of adapting your 
166        life to your job.
167    </p>
168</div><div class='big-video big-image-1 wm-animate' data-wman='videoSmaller' data-wmod='70'>
169        <img src='./assets/img/xbox-controller.jpg' alt=''>
170</div><div class='main-text-block text-block-black-bg text-content-width section-text-4'>
171        <p>
172        <span class='purple-underline wm-animate' data-wman='underline' data-wmdl='1000'>We are constantly growing</span> our 
173        team and are looking for the widest 
174        range of positions. Check what’s 
175        open right now, or feel free to send 
176        us your CV even if you don’t fully 
177        match the open positions. 
178    </p>
179</div><div class='big-video big-image-2 wm-animate' data-wman='videoSmaller' data-wmod='30'>
180    <img src='./assets/img/chill-room.png' alt=''>
181</div>    </div>
182    <div class='white-bg'>
183        <div class='section-text-5'>
184    <div class='asshole-free'>
185        <div class='asshole-free-header'>
186            <div class='header-content'>
187                <div class='line-1 wm-animate' data-wman='rsHeader' data-wmsm='0'><span>Asshole</span></div>
188                <div class='line-2 wm-animate' data-wman='lsHeader' data-wmsm='0'><span>Free</span></div>
189            </div>
190        </div>
191    </div>
192</div><div class='positions-expandable text-content-width'>
193	
193<script type="text/javascript">
194			</script>
194
195
196				<div class='one-position' id='jobid-481520'>
197				<h3 class='position-name'>Technical Animator</h3>
198				<div class='position-expander-icon'>--</div>
199				<div class='position-expandable-content'>
200					<div class='position-description'>
201						<h3><span style="color:rgb(0,0,0);"><strong>Technical Animator</strong></span></h3><ul><li><span style="color:rgb(0,0,0);"><strong>Location: </strong>Remote - Europe</span><p><span style="color:rgb(0,0,0);"><strong>Applicants must be based within the CEST time zone (±1 hour). Applications outside this range will not be considered.</strong></span></p></li><li><span style="color:rgb(0,0,0);"><strong>Start date: </strong>ASAP</span></li><li><span style="color:rgb(0,0,0);"><strong>Contract Type: </strong>Freelance (IČO)</span></li></ul><h4><span style="color:rgb(0,0,0);"><strong>Overview</strong></span></h4><p><span style="color:rgb(0,0,0);">Grip Studios is looking for a Technical Animator / Rigger with professional game development experience to support character rigging and animation workflows across our projects. The role is primarily focused on rigging and skinning in Maya, supporting animators, and bringing characters reliably into the game engine. We're looking for someone who can own the rigging side of production and bridge Maya, animation, and the game engine.</span></p><h4><span style="color:rgb(0,0,0);"><strong>Requirements</strong></span></h4><ul><li><span style="color:rgb(0,0,0);">Professional game development experience, with strong Maya character rigging and skinning skills.</span></li><li><span style="color:rgb(0,0,0);">Experience with production-ready humanoid rigs; creature rigging is a strong plus.</span></li><li><span style="color:rgb(0,0,0);">Solid understanding of deformation, skeletons, and animation requirements, with the ability to troubleshoot rigging, retargeting, and animation pipeline issues.</span></li><li><span style="color:rgb(0,0,0);">Experience supporting animators, solving technical animation problems, and bringing characters and animation assets into Unreal Engine.</span></li><li><span style="color:rgb(0,0,0);">Ability to work independently and across Animation, Character Art, Tech Art, and Engineering.</span></li><li><span style="color:rgb(0,0,0);">Expertise in Unreal Engine 5, including Control Rig, animation Blueprints, and state machines. Unreal Engine is our primary engine, but depending on the project, you may also work with proprietary or legacy engines.</span></li><li><span style="color:rgb(0,0,0);">Portfolio demonstrating strong rigging and deformation/skinning quality, ideally with in-engine results in Unreal Engine.</span></li></ul><h4><span style="color:rgb(0,0,0);"><strong>Responsibilities</strong></span></h4><ul><li><span style="color:rgb(0,0,0);">Own the rigging and skinning of characters in Maya, including production-ready humanoid and creature rigs.</span></li><li><span style="color:rgb(0,0,0);">Build and maintain deformation systems, skeletons, and rig setups that meet animation requirements.</span></li><li><span style="color:rgb(0,0,0);">Support animators by troubleshooting rigging, retargeting, and animation pipeline issues.</span></li><li><span style="color:rgb(0,0,0);">Bring characters and animation assets into Unreal Engine, and proprietary or legacy engines where required.</span></li><li><span style="color:rgb(0,0,0);">Collaborate closely with Animation, Character Art, Tech Art, and Engineering to bridge Maya, animation, and the game engine.</span></li><li><span style="color:rgb(0,0,0);">Work with animators to streamline workflows and improve animation pipelines.</span></li><li><span style="color:rgb(0,0,0);">Provide technical support and documentation for animation systems and best practices.</span></li><li><span style="color:rgb(0,0,0);">Work independently to own the rigging side of production.</span></li></ul><h4><span style="color:rgb(0,0,0);"><strong>Nice to Have</strong></span></h4><ul><li><span style="color:rgb(0,0,0);">MotionBuilder experience.</span></li><li><span style="color:rgb(0,0,0);">Pipeline scripting: Python / MEL.</span></li><li><span style="color:rgb(0,0,0);">Unreal-side rigging: Control Rig, Epic RBF Solver, MetaHumans.</span></li><li><span style="color:rgb(0,0,0);">Additional rigging specialties: facial rigs, cloth / secondary motion, prop or mechanical rigging, mocap and retargeting.</span></li></ul><h4><strong>What We Offer</strong></h4><ul><li><strong>Flexible working hours</strong> – because great games need great work-life balance.</li><li><strong>Access to cutting-edge tech</strong> and tools for testing.</li><li>A chance to <strong>work with gaming industry veterans</strong> and passionate teams.</li><li><strong>Opportunities for growth</strong> – we support learning, upskilling, and career progression.</li></ul>					</div>
202
203					<div class='formular'>
204						<form method='post' id='form-481520'>
205							<input hidden style='display: none; opacity: 0;' type='text' name='job_title' value='Technical Animator'></input>
206							<input hidden style='display: none; opacity: 0;' type='text' name='job_id' value='481520'></input>
207							<div class='inputs'>
208								<span class='name-input input-wait'>
209									<input type='text' name='full_name' placeholder='Full name *' required>
210								</span>
211								<span class='email-input input-wait'>
212									<input type='text' name='email' placeholder='Emai *' required>
213								</span>
214								<span class='phone-input input-wait'>
215									<input type='text' name='phone_number' placeholder='Phone number *' required>
216								</span>
217								<span class='url-input input-wait'>
218									<input type='url' name='linkedin' placeholder='LinkedIn'>
219								</span>
220								<span class='url-input input-wait'>
221									<input type='url' name='website' placeholder='Website / ArtStation, etc'>
222								</span>
223							</div>
224							<div class='buttons'>
225								<div class="upload-section portfolio-upload-section">
226									<label for="portfolio-upload-481520" class="portfolio-upload-button">Portfolio<span class="upload-size-info">max 30MB total</span></label>
227									<input class="portfolio-upload" name="portfolio_upload" id='portfolio-upload-481520' type="file" multiple>
228									<span class="uploaded-files changing-html-upload-portfolio">
229									</span>
230								</div>
231								<div class="upload-section cv-upload-section">
232									<label for="cv-upload-481520" class="cv-upload-button">CV / Resume *<span class="upload-size-info">max 4MB</span></label>
233									<input class="cv-upload" name="cv_upload" id='cv-upload-481520' type="file" accept=".pdf,.doc,.docx">
234									<span class="uploaded-files changing-html-upload-cv">
235									</span>
236								</div>
237							</div>
238
239							<span class='send-button-class'>
240								<input type='submit' value='Send' class='send-button'>
241								<input type='checkbox' name='agreement' id='agreement-input-481520' class='agreement-input-top' value='agree' required>
242								<label for='agreement-input-481520' class='agreement-label'>I agree with <a target='_blank' href='privacy-policy.php'>privacy policy</a></label>
243							</span>
244						</form>
245					</div>
246				</div>
247			</div>
248			</div>
249
250<script type="text/javascript">
251	function expander($e) {
252		$e.closest('.one-position').toggleClass('active-position');
253	}
254
255	$('.position-name').click(function() {
256		expander($(this));
257	});
258	$('.position-underline').click(function() {
259		expander($(this));
260	});
261	$('.position-expander-icon').click(function() {
262		expander($(this));
263	});
264
265</script>
265<div class='hiring-image wm-animate' data-wman='hiringImgSmaller' data-wmod='50'>
266    <div class='image-text'>
267        <h3>Hit us up!</h3>
268        <p>
269            Did not find the ideal job for you? <br />
270            Hit us up and we might find the dream job for you!
271        </p>
272    </div>
273    <div class='image-form'>
274        <div class='formular'>
275            <form method='post' id='hit-form'>
276                <input hidden style='display: none; opacity: 0;' type='text' name='job_title' value='hitusup'></input>
277                <input hidden style='display: none; opacity: 0;' type='text' name='job_id' value='473504'></input>
278                <div class='inputs'>
279                    <span class='name-input input-wait'>
280                        <input type='text' name='full_name' placeholder='Full name' required>
281                    </span>
282                    <span class='email-input input-wait'>
283                        <input type='text' name='email' placeholder='Email' required>
284                    </span>
285                    <span class='phone-input input-wait'>
286                        <input type='text' name='phone_number' placeholder='Phone number' required>
287                    </span>
288                    <span class='url-input input-wait'>
289                        <input type='url' name='linkedin' placeholder='LinkedIn'>
290                    </span>
291                    <span class='url-input input-wait'>
292                        <input type='url' name='website' placeholder='Website / ArtStation, etc'>
293                    </span>
294                </div>
295                <div class='buttons'>
296                    <!-- Portfolio Upload (Optional) -->
297                    <div class="upload-section portfolio-upload-section">
298                        <label for="portfolio-upload-image" class="portfolio-upload-button">Portfolio<span class="upload-size-info">max 30MB total</span></label>
299                        <input class="portfolio-upload" name="portfolio_upload" id='portfolio-upload-image' type="file" multiple>
300                        <span class="uploaded-files changing-html-upload-portfolio">
301                            <!-- Portfolio files will be displayed here -->
302                        </span>
303                    </div>
304                    <!-- CV Upload (Required) -->
305                    <div class="upload-section cv-upload-section">
306                        <label for="cv-upload-image" class="cv-upload-button">CV / Resume *<span class="upload-size-info">max 4MB</span></label>
307                        <input class="cv-upload" name="cv_upload" id='cv-upload-image' type="file" accept=".pdf,.doc,.docx">
308                        <span class="uploaded-files changing-html-upload-cv">
309                            <!-- CV files will be displayed here -->
310                        </span>
311                    </div>
312                </div>
313                <span class='send-button-class'>
314                    <input type='submit' value='Send' class='send-button'>
315                    <input type='checkbox' name='agreement' id='agreement-input' value='agree' required>
316                    <label for='agreement-input' class='agreement-label'>I agree with <a target='_blank' href='privacy-policy.php'>privacy policy</a></label>
317                </span>
318            </form>
319        </div>
320    </div>
321</div>        <div class='footer-divider'></div>
322    </div>>
323        <div class='footer'>
324            <div class='footer-background'>
325                <video playsinline muted autoplay loop preload='auto'>
326                    <source src='./assets/videos/asshole-free.mp4' type='video/mp4'>
327                </video>
328            </div>
329            <div class='footer-content'>
330                <div class='logo'><img class='logo-img' src='./assets/img/logos/logo_white.svg' alt='Logo'></div>
331
332                <div class='two-buttons'>
333                    <a href='hiring.php' class='button-purple'><span>Let's talk Jobs</span></a>
334                    <a href='contact.php' class='button-black'><span>Let's talk Business</span></a>
335                </div>
336
337                <div class='bottom-logos-wrapper'>
338                    <a target='_blank' href='https://www.instagram.com/lifeatgrip' class='instagram-logo'><img src='./assets/img/logos/instagram.svg' alt='Instagram Logo'></a>
339                    <a target='_blank' href='https://cz.linkedin.com/company/grip-digital' class='linkedin-logo'>
339<img src='./assets/img/logos/linkedin-purple.svg' alt='LinkedIn Logo'></a>
340                </div>
341
342                <p class='copyright'>Copyright &copy GRIP Digital, s.r.o. 2026</p>
343
344                <div class='bottom-buttons'>
345                    <a href='privacy-policy.php'>Privacy Policy</a>
346                </div>
347            </div>
348        </div>
349        
350        
350<script type="text/javascript" src="./assets/js/wm-fullscreen.js"></script>
350
351        
351<script type="text/javascript" src="./assets/js/form.js?v=20260130"></script>
351
352    </body>
353</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.