Senior Software Engineer - iOS
Salary: $120,000 – $130,000 per year
Hnry takes the hassle out of being self-employed by taking care of all the financial admin – everything from Invoicing and Payments through to Expenses and Taxes. We’re automating traditionally labour-intensive and stressful tasks, delivering great experiences and online tools for our users, and making their lives easier.
As part of our growing team you'll play a key role as part of our mobile team, working alongside other engineers to deliver a seamless experience across our Hnry mobile apps.
You'll have the opportunity to build out a robust, scalable, modern platform alongside developing new features in a fast-paced but rewarding environment - with the opportunity to also contribute to our Android apps.
🚀 Responsibilities
Working with the mobile team to design and build a modern and scalable platform to support the future of mobile development at Hnry
Engaging with customers and all members of the business to actively identify problems and propose solutions
Maintaining and deepening our existing user-facing feature set, ensuring delightful experiences which are consistent with our web offering
Working alongside other engineers to make sure we are providing our customers with the best tools and dashboards to support them in all aspects of being self-employed individuals
Following best practices in building robust and reliable software and encourage the same among colleagues
Take responsibility for 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 other members of the team
🫵 You will:
Have at least four years’ experience building mobile apps. Using Swift, Swift UI
Have strong experience with the fundamentals of mobile development
Have experience with managing CI/CD pipelines
Care about writing clean, maintainable and efficient code, and improving existing code, both for your peers and future you
Be confident using distributed development tools such as GitHub and Slack
Contribute in all phases of the development lifecycle
Work in a product team, alongside product specialists and designers
Be able to take complex problems, break them down, and build robust solutions
Approach problems with a curious mindset and empathy for the end user, always considering the impact of changes
Have excellent communication and collaboration skills — we work together and succeed as a team
Have significant experience with automated testing.
Enjoy discussions about software/product design and crafting solutions
Be open to working on our Android app too - no prior Android experience required, but a willingness to learn is a must.
Ability to review Android code
Have full working rights in NZ.
Bonus points for the following:
Experience with Android development.
Experience with using Turbolinks to build hybrid apps
Experience with Ruby on Rails, React and JavaScript
Experience being self-employed (freelancing, contracting etc) in any industry/profession
💪 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 web and backend 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.
Our mobile platforms are hybrid solutions which use Turbolinks to support us in building native features.
We have automated tests, continuous integration, and release to production regularly.
We review each other’s 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.
We have a strong, collaborative team and adopt an in office-first culture