Intermediate / Senior Software Developer
You’ll play a key role as part of a growing engineering team, working to build a polished experience for our customers while also scaling the systems required to operate the business. You’ll be expected to take ownership of the development of new features, from concept through to release.
Your Responsibilities will include:
- Engage with customer and all members of the business to actively identify problems and propose solutions
- Following best practices in building robust and reliable software and encourage the same among colleagues
- Take responsibility for the delivering functionality from concept through to production release and post-release maintenance
- Produce work that meets the expected level of test coverage and improve test coverage across the existing codebase
- Provide detailed code reviews to colleagues, sharing your knowledge and ensuring that standards are maintained
- Design the architecture of new features and present this back to the team for feedback
- Collaborate with and support other members of the wider Hnry team
- Mentor and provide support to less senior developers on the team
- Participate in the recruitment process (e.g. interviews) as requested
How we work
- We follow agile practices, delivering improvements iteratively in small chunks. We track the impact of our work and measure ourselves on results, not the amount of code written.
- We’re growing fast, and are focused on building a well designed, scalable & robust platform. In some areas of the work (e.g. payment processing) there is very little margin for error.
- Our technology platform is built in Ruby on Rails, and we also use a bunch of AWS services (via Terraform), Postgres, Docker, and a little bit of React.
- We have automated tests, continuous deployment, and release to production multiple times per day.
- We review each others code, and set aside time for hacking on experimental features, refactoring and/or learning new things.
- We work hard and finish on time, no crazy hours.
- Have at least two years experience building web applications using Ruby or a similar language
- Have excellent communication and collaboration skills — we work together and succeed as a team
- Be able to take complex problems, break them down, and build robust solutions
- Have experience with automated testing
- Be comfortable building back end systems that have no user interface
- Enjoy discussions about software/product design and crafting solutions
- Have NZ residency or a valid NZ work visa
Bonus points for the following:
- Experience building distributed systems (e.g. Micro Services)
- Experience building large scale systems
- Experience being self-employed (freelancing, contracting etc) in any industry/profession