Principal Frontend Engineer

Technology

Thessaloniki, Central Macedonia

We are Kaizen Gaming

Kaizen Gaming is the leading GameTech company in Greece and one of the fastest-growing in the world, operating in 13 markets with 2 brands, Betano & Stoiximan. 

We always aim to leverage cutting-edge technology, providing the best experience to our millions of customers who trust us for their entertainment.  

We are a diverse team of more than 2.200 Kaizeners, from 40+ nationalities spreading across 3 continents. Our #oneteam is proud to be among the Best Workplaces in Europe and certified Great Place to Work across our offices. Here, there’ll be no average day for you. Ready to press play on potential? 

The opportunity 

Principals hold a central role in the Technology department. They are expected to help teams devise elegant and performant solutions in response to real business problems, guide them in designing and implementing these solutions in code, as well as teach coding, testing, debugging, and performance analysis techniques, while also carrying out code reviews.

As a Frontend Principal Software Engineer you will develop modern applications for our product by using state-of-the-art technologies. Your focus will be the execution of the technical roadmap, so code modularity, reusability & testability as well as performance tuning and monitoring will be a part of your day-to-day. Equally important, you will also provide technical guidance to the development teams, enforcing best practices and patterns for our features. More specifically, you will participate in technical analysis, and in collaboration with UI/UX designers, you will have the opportunity to offer the best experience to our customers.

Tech Stack

On our frontends, use Vue.js 3, Typescript, VueX, Pinia, Tailwind, Webpack, Vite, Storybook, Jest, Vitest, Openshift, Private npm packages for building our internal shared libraries, Micro frontends architecture

Day to Day 

  • Write code as we expect our technical leadership to be in the trenches alongside engineers, understand root causes, and lead by example.
  • You understand key frontend performance metrics and have some experience in debugging frameworks such as Lighthouse and ChromeUX.
  • Exert technical influence over multiple teams, actively mentor individuals on advanced technical issues, and help technology managers guide the technical growth of their team members.
  • Support Product and Delivery in building highly scalable solutions aligned with non-functional requirements in terms of performance, security & regulatory.
  • Provide clear hands-on solutions with POCs or actual implementations depending on the particular case and scenario.
  • Participate in technical discussions as part of the team. You should be ready to challenge our architecture, propose changes, and ultimately implement them.
  • Become the first point of contact between the Architecture Engineering Team and Development Teams. Safeguard our engineering processes and the way we deliver software to browsers and mobile devices.

Nice to have

  • Knowledge of how modern frontend libraries connect data and state to the underlying rendering engine be it a browser DOM or a native mobile API.
  • Good knowledge of frontend integration schemes either on the client side or server side (iframes, micro-frontends, edge includes)
  • Excellent understanding of all the possible ways JavaScript can be shipped to an end client over a network.
  • Experience with server-side rendering in any of the major front-end frameworks is nice to have.
  • Solid experience with bundling tools such as Webpack and Vite.
  • Solid experience with a global store / action-based state management pattern (Redux, VueX, Pinia)
  • Excellent understanding of how SPA frontends can communicate with a BFF and best practices in terms of API design.
  • Excellent knowledge of all newest browser APIs such as service-workers, MutationObserver, ResizeObserver
  • Experience with mobile development either native or through a hybrid model (react-native, ionic, etc) will be considered a plus.