FreshBooks has an ambitious vision. We launched in 2003 but we’re just getting started and there’s a lot left to do. We're a high-performing team working towards a common goal: building an elite online accounting application to help small businesses better handle their finances. Known for extraordinary product and customer service experiences and based in Toronto, Canada, FreshBooks serves paying customers in over 120 countries.
The Opportunity - Staff Data Engineer (Remote)
We’re looking for a strong technical leader who has gravitas to influence and has deep knowledge of building and designing scalable data platforms. An effective communicator, a mentor who can think on their feet and be able to come up with practical, simple solutions to complex problems. As a Staff Engineer, you are someone who can redefine data engineering capability and constantly push boundaries. You will co-own FreshBooks’ data platform to ensure scalability and elasticity.
If this appeals to you, please come and chat with us to learn more about how you can become a part of the intrinsically motivated teams of data engineers!
What you'll do in your first twelve months at FreshBooks:
- Collaborate with analytics, engineering and business teams working on the product for our customers.
- Be the technical lead and advocate best practices, contribution to roadmaps, developing the domain breadth and/or depth, stewardship.
- Contribute towards defining technical vision and challenge across different levels of business including Senior Executives and Senior Leadership group.
- Help in growing the technical expertise of the team as they continue to work and touch services outside their realm.
- Demonstrate experience coaching and mentoring data engineering teams, and growing the overall technical maturity of our Data organization.
- Evolve our data platform architecture to scale with our rapidly growing customer community.
- Develop a deep understanding of multiple parts of our stack as well as the processes and technologies relevant to our tech space.
- Be capable of supporting the data platform from end to end.
- Raise the bar for our entire data engineering team through best practices, automation, documentation, and hiring.
- Level up our operational excellence, and drive our team to maintain it, so that common regressions are root caused.
- Support operational excellence and make measurable improvements to our support processes.
What you bring:
- At least 10 years of combined experience in software and data engineering (Agile or Lean environment)
- Strong programming skills in Python or similar language with deep refactoring skills.
- Five or more years with cloud based data platforms and technologies such as AWS or Google Cloud Technologies, Elastic MapReduce, S3, EC2, and Kinesis.
- Experience in architecting and building large-scale batch or stream processing data pipelines.
- Experience architecting scalable ETLs with inputs from multiple data sources.
- Experience with data warehousing technologies such as Amazon RedShift or Google BigQuery.
- Experience in Airflow or other data infrastructure job scheduling software.
- Experience writing complex SQL queries.
- Ability to troubleshoot and determine root causes of issues.
- Experience working with large codebases, writing robust and testable code
- Experience ensuring security and governance of data.
- A passion for keeping up to date in current technologies and future trends
- A deep understanding of test-driven (and behavioural test driven) development, and of building substantially complete test code, and not just for the happy path
- Familiarity with continuous integration (or better, continuous delivery) and automated build pipelines.
- The ability to balance desire to ship code quickly to our customers with the responsibility of making good technical decisions.
- A long-standing habit of continuous learning, and of applying new technologies, architectures, and methodologies to improve the code and Engineering organization.
What you might bring:
We're looking for a variety of talented technical leadership and know that a mix of skills and experience is useful. Even having a couple of the skills from the list below would be a strong asset.
- Expertise in the core areas of business of FreshBooks (accounting, payments, small business solutions)
- A background in DevOps and service ownership, and a clear understanding of bounded contexts and how they map onto microservices.
- Strong pair programming both as a mechanism for producing better code, and for teaching skills.
- Experience with Docker, Kubernetes, Ansible, Terraform, or other similar tools.
- Experience with Redis / Elasticsearch & RabbitMQ.
Why Join Us
We're a motivated bunch, with our eye’s laser-focused on shipping extraordinary experiences to businesses. You will be surrounded by hardworking team members who share a common vision for what an amazing software company could be and have the opportunity to help build an elite one, right here in downtown Toronto.
Have we got your attention? Submit your application today and a member of our recruitment team will be in touch with you shortly!
FreshBooks is an equal opportunity employer. We do not discriminate based on gender, religion, race, mental disability, sexual orientation, age, or any other status. All applicants are considered based on their qualifications and merits. At FreshBooks, we inspire an environment of mutual respect and we believe diversity and inclusion are crucial to our success.
Here at FreshBooks, we welcome and encourage applications from people with disabilities. Should you require any accommodations during the recruitment process, please advise your recruiter on how we can meet your needs to ensure a fair and equitable selection process in a confidential manner.