Full Stack Developer

  • Paarden Eiland Rd, Paarden Eiland, Cape Town, 7405, South Africa
  • Employees can work remotely
  • Full-time

Company Description

Yoyo powers some of the world’s leading retail brands, through customer loyalty and rewards software solutions, to offer the world's most rewarding buying experience.

We create a space where passionate, smart, curious and creative people thrive.

Our values are our way of being, and how we show up every day.

This is how we help our clients build their best business and our staff build a career to be proud of. Living these values builds an environment where world-class passionate people create world-class scalable products that delight customers and consumers and drive scalable profit and revenue growth.

Job Description

Our product comprises ReactJS, React-Native, iOS and Android apps that talk to a suite of APIs powered by the Yoyo platform. We use a service-oriented architecture to support real-time, high-volume transactions that consistently deliver sub-one-second response times at the point-of-sale. You’ll be working with a backend stack to include, but is not limited to: Java Spring Boot, Python, Django, Event messaging and RESTful APIs, Services Oriented Architecture, CircleCI / Continuous Deployment via ChatOps, and is hosted on AWS.

Responsibilities

  • Supporting the design of our next-generation systems
  • Design and develop APIs used by cross-platform applications
  • Development of well-structured and maintainable web and mobile applications
  • Writing code which is reusable, testable and efficient
  • Design and propose integration approaches with third party services, to enhance capabilities of our product offering
  • Collaborating with a cross-functional team of other engineers and product managers to plan and estimate the team’s work in a Scrum/Kanban hybrid workflow
  • Working in a fast-moving but stable environment in a continuous deployment workflow - testing and QA is very much a part of your role
  • Contributing in planning sessions and retrospectives
  • Design of software and database solutions and frameworks
  • Software and database build & review
  • Unit and integration testing
  • Deployment package creation
  • Defect resolution
  • Production defect, enhancement and ad-hoc query resolution
  • Continuous improvement of software development lifecycle (SDLC)

Knowledge and Qualifications

  • Knowledge in React, Java Spring Boot, Python 3+, Django, PostgreSQL, DynamoDB, RabbitMQ, Redis, Celery, Docker, AWS, TDD
  • Knowledge of multiple front-end languages and libraries (e.g. HTML/ CSS, JavaScript, XML, jQuery)
  • Proven experience as a Full Stack Developer or similar role
  • Deep understanding of system design, data structures, and algorithms
  • Knowledge in using advanced SQL/MySQL queries
  • Understanding and implementation of security and data protection
  • Knowledge of code versioning tools (specifically Git)
  • Customer-centric - a deep understanding of what would benefit our users most
  • Personable, enthusiastic and articulate
  • A passion for programming and software engineering by either blogging or attending coding conferences or meet-ups; a big plus if you've contributed to open-source software
  • A self-starter - able to use initiative and deliver results
  • Highly collaborative - able to work successfully across teams
  • Logical and strong problem-solving skills
  • Adaptability, creativity and innovation, initiative, resilience, consideration, strategic, analytical and intuitive

Additional Information

    Company Values:

    • Be passionate: Spiral up, be positive, bring momentum, and energy to those around you.
    • Be an owner: Be accountable and take responsibility. Find solutions, learn from your mistakes and own tasks to completion.
    • Be world class at speed: Delivering world leading solutions at speed
    • Be curious and creative: Constantly innovating, exploring, learning, stretching yourself, pushing the boundaries and thinking out of the box.
    • Be a team player: Leave ego at the door, be teachable, engaged, inclusive, and transparent. Bring the best of yourself and the best out of others, rallying behind a larger team mission.

    Videos To Watch