Software Engineer (Browser Extensions)
Victoria, BC, Canada - Permanent, Full Time
Up to 2 positions available
For information about Rooof, our company culture, and our work values, please read our Team page.
- Browser extension development and maintenance
- Look for bugs in our existing code and address them
- Write new code for new features
- Respond to third-party web-based changes by adapting our existing code
- Write documentation to support your work
- Continuous integration, deployment, logging, and testing
- Teach others how to perform your key responsibilities
- Perform research and development tasks to seek new business opportunities for the company
Who you’d be working with
Our main product at the moment is our Chrome Extension and requires your primary attention.
Catlin works on the Electron platform that we're building. In only a few months he’s built up a solid understanding of the extension code and is building our Electron implementation on top of it. You’d be working with him to make sure we have testing in place for its release next year. In addition to automated testing, we also need continuous integration for faster and more predictable deployment of these various components.
Adam has built the backend for our extension - our internal API. We are transitioning to a new version of our API built in Python/Django. You’ll be working with both him and another new software engineer who are working on the rewrite and transition the API while also building a web application against the new API. We want to make sure that nothing is missed during the transition and that we have solid tests in place for the new version. The new RESTful API needs automated testing and continuous integration for deployment.
Miranda integrates our software with our customers’ websites. Integration is done through a somewhat complex process of reading their websites and using that information to create automated classified ads. You’ll be working with Miranda as she leads the charge to transition us to a better way of doing things. You’ll be responsible for understanding the process and figuring out how we can test it and monitor it's resilience.
As new product ideas are developed, you’d also be involved with them as well to make sure they are tested from the start.
Everyone on the team ultimately reports to Adam Cowley (the other Adam) and we’re seeking a Software Engineering Manager to help manage just the software engineers. Matt is our Product Manager and he ensures that all aspects of our core products are running and growing as expected.
Who are you?
- You have an undergraduate degree in computer science or software engineer
- You have 4+ years of programming experience directly with browser extensions or add-ons
- You have experience planning software development roadmaps
- You may have experience implementing unit tests and performing peer code reviews
- You are self-driven and pro-active. You’ll be expected to take ownership of all aspects of the position
- You have great attention to detail and you are committed to helping us prevent errors and omissions in our code
- You look to solve the root problem instead of band-aid solutions
- You communicate well. You’ll be our internal champion for quality & reliability and will need to work well with our other engineers to make sure they understand the importance of writing code in a modular and maintainable manner.
Think you're the perfect fit? Email jobs at rooof dot com with an introduction, resume in PDF format, and anything else you would like us to know about you. If you don’t have a fancy resume, then just send us a list of your experience and describe why it makes you good for this job.
In your introduction, tell us why you want to work at Rooof. If you’ve ever done a similar job, tell us in a short story how you did something awesome.
If you want to really impress us, do something a little different... Like an audio/video clip!
Please submit your application by September 15, 2017.