Senior Software Engineer (​Backend focus) at Open Learning

Full-time, Sydney sydney engineering full-time
Description
Posted 6 days ago

About us:

OpenLearning.com is a growing education SaaS company working towards its mission of being the number one lifelong learning platform. We provide a cutting-edge lifelong learning platform which goes beyond content delivery, and focuses on enabling interactive and engaging social learning experiences for communities of connected learners.

We are currently looking for two senior software engineers to join our growing technical team in Sydney.

OpenLearning values diversity of experiences and backgrounds. We strongly encourage everyone with a genuine passion for education and solid software development experience to apply, even if you only meet some of the role criteria.

COVID-19:

This role is ordinarily based in our Sydney office, but we are currently working from home. We have adapted well to working remotely and check in with each other via daily video standups, with discussions/pair programming over discord. We otherwise enable a flexible working schedule that values personal autonomy and your preferred work style. You will be working in collaboration with our core platform developers in Sydney, our international software teams, and our global operational support staff - primarily based in our Sydney and Kuala Lumpur offices.

What we are looking for:

We’re looking for two senior software engineers, one full stack (web/mobile) and one with a backend focus. As an ideal candidate you will have a passion for developing a world-class education platform, an ability to thrive in a fast paced environment, and excellent team and communication skills, including the ability to:

● Identify issues in technical architecture, development practices, team processes, and communication within and outside the development team. Surface these issues with relevant stakeholders, collect further information, and take responsibility for making the necessary improvements.

● Work in consultation with stakeholders including the leadership, product, and customer success teams (and others) to identify product requirements, design solutions, and ensure requirements are met.

● Constantly research developments in the broader technical community and integrate appropriate and useful innovations into our code and processes. Engage the team in these discussions and build consensus for worthwhile changes.

● Contribute to the learning and development of others on the team, including participating in and leading code showcases, code reviews, discussions about technical architecture, etc.

● Proactively work to support the rest of the team, including with communication, moral support, and optimising the developer experience.

● Show a passion for teaching, learning, experimentation, and making a social impact.

● Encourage a kind/positive/playful attitude that embraces change, agility, and diversity within teams and working environments.

You will have a Bachelors, Masters, or PhD in computer science/software engineering, a related technical field or similar experience, with a solid understanding of software engineering principles and practices.

Extensive experience is required with a prominent web application language - preferably both Python and NodeJS (Typescript) - as well as familiarity with front-end development technologies (e.g. React and Javascript browser technologies), unit testing, and defining test cases for system/user testing


Excellent knowledge of both ​RDBMSs​ and MongoDB,​ including:

● all aspects of configuration, best practices, and troubleshooting

● schema design, performance tuning, query optimization, & index tuning

● backup solutions

● replica set and sharding topologies

● migration of code and data between SQL and NoSQL technologies

ExperiencebuildingV​ M-based,containerised, and serverless​ solutions using public cloud offerings such as Azure or AWS and cloud security concerns.

Experience with data/search services such as ElasticSearch.

Experience with server security technologies, e.g. TLS, encryption at rest.

Extensive experience in ​RESTful API design​, development, and integration technologies including:

● JWTs, and session/identity management

● OAuth2.0, OpenID Connect, or SAML

  

Advantageous (but not essential) experience:

● GraphQL

● developing with education technologies such as xAPI and LTI 1.3 Advantage

● Ansible (or other configuration management tools)

● serverless Azure technologies, such as Azure Functions (& durable functions), Event Hubs, Azure SignalR, Stream Analytics

● knowledge of container technologies (Docker, Kubernetes)

● CQRS, event-driven, and event-sourcing architectures

● Experience contributing to open source software projects

Apply:

Contact​ [email protected]​ with a CV/Resume and examples of your relevant experience