Back to careers

Principal Software Engineer

Wellington, New Zealand

Interested to apply? Please send your CV and a covering letter outlining your suitability for the role to careers@arlo.co

A bit about us 

Arlo is an award-winning global business with HQ in Wellington, New Zealand and offices in the UK and Canada.

We believe that human interaction is still at the heart of effective learning. Blend that philosophy with the latest elearning tech, Arlo is fast becoming the preferred solution of choice for commercial training providers globally.

Arlo has been developed as the definitive tool to run a training operation, helping our clients save time, grow sales and transform the way their training is delivered. With customers in over 70 countries and processing over $1b since conception, Arlo is the realisation of that vision. 

That success is put down to a combination of super talented and passionate individuals, who never stop pushing the envelope and with the single-minded focus to make training management easy and accessible.

What you’ll do

As the Principal Software Engineer, you’ll be responsible for overall technical solution delivery of projects and business development efforts. You’ll craft the vision for the implementation of technology work streams which includes all facets from architecture planning, development approach, infrastructure, integration and DevOps processes, data management, and migration/deployment.


You’ll ensure the architectural approach and vision for all components of the solution are met by the engineering teams in regards to quality and scope. Confirming the delivery of all technical elements and leading overall projects or critical work streams by providing technical leadership across multiple disciplines and teams, supporting other senior engineers when required is a key part of this role.

Responsibilities 

  • Working with the Head of Development, CTO, product and UX teams to create technical and scope specifications, including scalability, security and reliability requirements
  • Coordinating with other lead engineers across architecture, frontend and backend disciplines to architect our projects and design our solutions using an approach consistent with industry best practices
  • Coordinating DevOps to ensure smooth deployment of solutions
  • Assess data security requirements and build necessary security features into the solution architecture
  • Working with the CTO to ensure the proposed implementation designs are aligned with the organization’s technology vision
  • Providing technical leadership of the engineering team to code, integrate, test, migrate and deliver all components of a given workstream/solution
  • Guiding software developers to ensure conformance with architecture and security specifications
  • Managing in-house standards for software development, ensuring consistency across multiple teams and to streamline workflows
  • Conducting R&D to create prototypes and proof of concepts which test and prove theories and approaches proposed for wider adoption
  • Hands-on approach to engineering, including writing frontend and backend code to support the team with delivery
  • Working with DevOps teams in the deployment of solutions into a cloud environment, including ensuring required elements are in place for teams to monitor and support the solutions
  • Learning about all layers of the software stack exposed to users through the web, including cloud-based fault-tolerant systems, distributed application architectures, multi-tenant databases, and frontend UX paradigms and technologies
  • Participating in constructive code review processes, creating a supportive culture of identifying and mitigating potential issues before and after deployment
  • Organizing regular demos and knowledge sharing sessions with the team
  • Providing mentoring, coaching and technical guidance across the business
  • Reporting of workstream technical progress, issues, or status information to the Head of Development, CTO and other stakeholders.

You will excel in this role if you:

  • Approach development with rigour and a product mindset
  • Use libraries judiciously and avoid architecture antipatterns
  • Know C#, TypeScript, and modern frontend frameworks (e.g. React)
  • Believe in clearly documenting your ideas
  • Enjoy reading the documentation produced by others
  • Get excited about a wide range of technical topics and dig deep into them
  • Don’t mind co-workers getting really excited about technical concepts
  • Are interested in hands-on problem solving or solution delivery and actively participating in a technical team environment.

About you:

You’ll be able to demonstrate the experience, knowledge and capabilities required to be successful in this role:

  • 6+ years designing and managing technology implementation projects
  • Proven and demonstrated experience architecting, leading and delivering to market, multi-tenant cloud based SaaS solutions
  • Experience as a Technical Lead on large-scale cloud projects involving multiple interfaces, engineering teams, and stakeholders
  • Experience in delivery of software using an Agile methodology, Scrum preferred
  • Strong understanding of cloud architecture design and DevOps processes
  • Ability to interpret and document technical designs of logical system architectures
  • Experience working in a team-oriented, collaborative environment
  • Excellent interpersonal, written, and oral communication skills
  • B.S in Computer Science, Computer Engineering or Electrical Engineering or equivalent experience.

Capabilities

CapabilityExpectation
AchievementDriving high standards for accomplishment; working hard to meet or exceed challenging goals; deriving satisfaction from goal achievement and continuous improvement.
Business
relationships
Building relationships and partnerships with internal and external customers to collaboratively execute business strategies; ensuring that the customer perspective is a driving force behind business decisions and activities.
Knowledge sharingActively sharing and contributing own knowledge, skills and expertise to support the development of others.
Knowledge sharingAwareness of one’s personal development areas, strengths and weaknesses, to be able to identify stress/emotional triggers, and motivators; understanding the importance of personal brand and how the perception of others can impact on working relationships.
Knowledge sharingMake informed decisions and calculated risks to resolve arising problems with the ability to reflect and learn from previous experiences and key outcomes, both good and bad.