Company and role overview
Snowfall’s main focus is providing technical solutions to the travel industry. We’re active across all travel verticals; airlines, ground and sea transportation, and provide solutions for distribution, commercial and operational systems as well as onboard Wi-Fi, connectivity and entertainment. Snowfall operates in a B2B2C environment, delivering value to our customers via a building-block model. We combine our modular technology in bespoke solutions, allowing us to more quickly address opportunities and meet customer needs.
We combine this with a keen commercial focus and strong industry domain knowledge. We understand our customers’ customer – the traveller – which helps us play an advisory role as well as providing great technology. We create value by working hand-in-hand with our customers in true partnerships, co-locating teams and sharing the commercial benefits and risks.
Snowfall is a culture-driven organisation. The environment is high-growth, high-energy, high-intensity and non-silo’d. It is dynamic with a get-it-done attitude across the organisation. The culture is also one of accountability – we all commit to our deliverables, and then we deliver. And we get a lot of flexibility and freedom in return.
Role and responsibilities
The ideal Backend Developer is self-motivated, has a hands-on attitude to work, loves coding, is passionate about their work and their teams work and wants to continuously progress their skillset. They must be comfortable working in a virtual work environment with resources spread across the globe who predominantly work from home. One day is usually not exactly the same as the next, so being flexible and nimble will be a huge benefit. If you recognise yourself in the description above, we are convinced you’ll love being part of our team.
- Build and scale high performance backend systems, primarily using Python programming language and ecosystem
- Troubleshoot issues in and improve functionality of existing systems
- Integrate user-facing elements developed by mobile and web teams. Work with 3rd party data sources and APIs (systems integration)
- Embed security and data protection
- Actively collaborate with a cross-functional team working with product owners, UI/UX designers, backend developers, app developers and QA at various stages of the development process.
- Develop appropriate tests to support code and ensure test automation and code quality and security
- Conduct unit testing on your code and conduct code reviews.
- Based on the project needs and end goals, proactively suggest improvements to architecture and technologies for maximising development efficiency
- Mentor and coach other backend developers within the team
- You will also be expected to keep your skills up to date by following advancements in the field and researching new and innovative technologies and techniques.
Qualification & Experience Requirements
- Minimum 5 years of software development experience, at least 3 of which are hands on Python coding
- Solid knowledge of Python web frameworks (Flask, Django, FastAPI or such)
- In-depth knowledge of modern software design patterns
- Ability to design elegant and efficient JSON REST APIs for given use cases (using OpenAPI standard and toolchain)
- Good understanding of (and significant experience in) concurrent and parallel computing, asynchronicity, distributed computing patterns and principles
- Solid knowledge of common algorithms, data structures, OOP (patterns and specific python implementations)
- Understanding of CI/CD development practice and tools, experience writing Integration and Unit tests in Python.
- Combination of good coding skills, end to end thinking and problem solving approach and track record of standalone delivering bigger chunks of work
- Good knowledge of Agile principles and experience with some popular issue tracking tool (for example Jira)
- Ability to communicate effectively to a variety of audiences including both technical and non-technical stakeholders.
- Bachelor’s degree in Engineering or Computer Science, or equivalent experience
- Fluency in English both written and oral