Work In Tech

Find your next role at Canada's fastest-growing tech companies

Chrome Extension Software Developer

Rooof

Rooof

Software Engineering
Victoria, BC, Canada
Posted 6+ months ago

Chrome Extension Software Developer

Please read this entire job description and follow the instructions carefully before you apply. We appreciate your attention to detail as it is an integral part of our application process. Thank you!


About our company

At Rooof we build PostEngine, the world’s best software for automatically creating classified ads. PostEngine allows users to select an available rental they’d like to post an ad for, automatically templates a posting using unit and property amenity information, logs into the appropriate platform, and programmatically posts the ad.

That said, we’re even more proud of the team that we’ve built. We love working together and we’re very good at innovating, selling, and capturing the hearts of our customers.


What we’re looking for

PostEngine has evolved a lot since we started back in 2012 and now it’s a mature product with a lot of infrastructure. We’ve been working through a transition period with our Chrome extension and Electron-based web applications while simultaneously starting a second company, so we need some help!

We have a mature yet modern product stack which we’ve rebuilt over the past few years. Rooof has recently started a second company and some of our team is moving on to work on a brand-new product, but we don’t want to neglect our existing business.

The goal of this role is to add velocity and increase our knowledge sharing for the PostEngine platforms to continue delivering quality feature updates to our users.

Our technology stack

Chrome extension:

JavaScript

TypeScript

HTML/CSS

Manifest V3 Chrome Store APIs

Chrome Web Store

Desktop app:

TypeScript

JavaScript

HTML/SCSS

Electron framework

Microsoft Store

API & Database:

Python

Django

PostgreSQL

AWS

DevOps:

Jira

GitHub

Docker

CircleCI


What you’d be doing

Our goal as an engineering department is to serve our internal customers: the Product and Client Services teams, who serve our external clients. Using an agile scrum methodology our goal every two weeks is to deliver new and improved features to our products, help fix any bugs with existing functionality, or clean up any technical debt from the past.

Here is a snapshot of some of the activities this role may encounter:

Front-end development

  • Working with RESTful APIs (ours and third-party)
  • Working with Databases
  • Web-based development

Quality assurance & deployment

  • Issue reproduction & investigation
  • Unit test writing and automation
  • Participate in releasing code via Continuous Integration and Deployment (CI/CD)
  • Contributing to logging, dashboards, and alerts for monitoring

Agile activities

  • Code reviews
  • Spike meetings and Sprint retrospectives
  • Task estimation & breakdown
  • Functional and technical requirements development and review
  • Working on projects with our cross-functional teams


Your skills & experience

  • Proficiency in HTML & CSS for structuring content in extensions and styling their user interfaces
  • Past experience using JavaScript to implement functionality in a Chrome extension, including JavaScript frameworks and third-party libraries
  • Knowledge and understanding of the various Chrome extension APIs
  • Knowledge of extension concepts like background scripts, content scripts, chrome.runtime, chrome.storage, chrome.tabs, etc.
  • Understanding Manifest V3, including the new structure changes to the ecosystem and how it affects new extension development
  • Using JSON to create manifest files
  • Using browser- and extension-based developer tools to debug and develop
  • Experience building software using asynchronous functions


Your traits & values

  • You are detail-oriented
  • You are customer-focused
  • You are self-sufficient, and able to work independently
  • You are able to communicate complex technical issues to non-technical teams
  • You prefer it done right, not necessarily right now
  • You have exceptional problem-solving abilities and you don't give up
  • You have a range of experience with different technologies
  • You are open to working in different areas of technology and not just in a specific niche
  • You can context-switch between working on low-level development projects and high-level implementation discussions with cross-functional teams


Your onboarding experience

Everyone has to start somewhere, so here’s a quick description of what to expect when you first start, and how things might evolve over several months and the first year. These are just baseline expectations of the progress, and results would really depend on the growth of the candidates, the position and the priorities of the team at the time.

First few weeks

  • Learn about Rooof’s history, business model, and future plans.
  • Get introduced to our team, products, and platforms by having meetings with various department members from engineering, product, and client services.
  • Familiarize yourself with our internal tools and processes.
  • Explore our tech stack and ecosystem.
  • Shadow and pair-program with others in the engineering team as they work through daily tasks for current projects.
  • Get assigned your first introductory tasks.

First few months

  • Steadily increase your development capacity over time, namely by growing the types of components you’re comfortable with so you can work on a wider variety of tasks.
  • Become familiar with the full project technology stack.
  • Take professional development time to hone your skills.

Within the first year

  • Increase your development capacity by undertaking larger and more complex issues.
  • Become proficient in working with the full project technology stack.
  • Start contributing more to foundational and planning activities like technical requirements, design specifications, etc.


Who you’d be working with

Rebecca is our PostEngine development and integration developer who’s got an amazing knowledge of PostEngine and the platforms we work with. She’s also done a lot of QA in the past and can help introduce the review/test/release processes.

Adam, Lisa, and Nino are some of our other Rooof/PostEngine developers who work on other platforms like our internal administration platforms and our APIs. They’ll be great resources for learning how PostEngine interacts with the rest of our tech stack.

Jason is our Product Manager for PostEngine and is our product subject matter expert. He helps run the engineering sprints with our other Product Manager and ensures that development moves along smoothly and meets the requirements of the roadmap and any deadlines.


Our compensation package

  • We offer compensation packages based on experience and circumstances of employment. All wages are expressed hourly and paid based on timesheets.
  • Paid time off (PTO) (vacation, holiday, discretionary, etc.) equivalent to either 8% paid on each pay cheque or banked time
  • Paid sick time off (accrued at a rate of 2%)
  • Paid time off for statutory holiday allowance. (Regional holidays and customs vary vastly. Instead of paid time off for regional holidays, we pay out 4% on each pay cheque. If the employee chooses not to work on a regional holiday, then it is PTO or has already been compensated by this 4%)
  • Allowance for health and wellness equivalent to an additional 4% on each paycheque, but the employee is responsible for procuring their own health care.
  • Up to 3 paid days per quarter for professional development opportunities

Application process

  • Applications and interviews are reviewed and conducted on a rolling basis; No deadline. Please apply in a timely manner.
  • Cover letter and Resume are both required
  • Your application must be submitted directly to our applicant-tracking system found at https://rooof.bamboohr.com/careers (Do not submit your application using the website upon which you found the job posting. Do not use the "Easy Apply" button in Indeed.)
  • To demonstrate your attention to detail and excellent ability to follow instructions, please include the words "Rubber Ducky" in your cover letter. This process helps us identify people with great attention to detail.