Position Description:

Software Engineer: Front-end

Your mission:

You will be part of an agile, cross-functional development team that is working hard to develop the best retail product across platforms for our users. As a Front-End Engineer, you will be a key driver for defining and implementing a scalable, flexible frontend architecture that enables a consistent UX, fast delivery across platforms, and seamless coordination between multiple product engineering teams to create superb end-to-end experiences.

What you’ll do

  • Work with your team and technical lead to create robust frontend solutions using state-of-the-art technologies. You will build components that are used throughout all of TFGLabs’ frontends (mobile, desktop, apps)
  • Work with your team to rapidly test ideas on users, use results for iterations and improve our product
  • Collaborate with Product Owners, UX designers and other Application Engineers to deliver both new functionality and iterative improvements to backend services.
  • Participate in code reviews with other engineers
  • Focus on sharing knowledge with other engineers
  • Identify and resolve scalability and performance issues
  • Build highly reusable frontend components.

What we’re looking for

  • Experience in building responsive/adaptive web applications with JavaScript/Typescript.
  • Solid experience in React JS (React Native knowledge is a big plus)
  • Ability to write structured and clean code that interacts with backend technologies.
  • Experience with Javascript testing tools.
  • Experience with modern front-end build pipelines and tools.
  • Experience with defining and delivering scalable frontend architectures (e.g. micro frontends) is a plus
  • Experience with scripting in Python/Bash scripting is a plus.
  • You are ideally familiar with AWS, although it’s useful if you have some knowledge of other cloud services, too.
  • You regularly practice honing your engineering craft, expanding your skills in techniques such as test first thinking, refactoring, clean code and pair programming.
  • You appreciate the benefits of CI pipelines and automation for both quality and deployment.
  • You understand the importance of delighting users with your product while making sure it remains stable, performant, observable and supportable. You know the product(s) delighted users because you helped to instrument, evaluate and iterate on them to be sure.
  • If you’ve played a role in designing and implementing new architectures and technical strategies, while also looking after existing technology real-estate, you’ll fit in great.
  • Importantly, if you’re looking for a senior role with us, you will have achieved many of the things above while also teaching others, influencing your team and organisation, and maybe even sharing your journey and knowledge publicly.

Our technology stack is diverse and ever-changing. Examples of the technologies we currently use and you’ll be working with include (but are by no means limited to):

  • Typescript with React for our web applications
  • React-Native for our mobile apps
  • GraphQL
  • Node.js for supporting backend services when needed
  • Kubernetes & Docker
  • Python & Go

Preference will be given, but not limited to candidates from designated groups in terms of the Employment Equity Act.

Learn more/Apply for this position