Principal Software Engineer - Front End
EngineeringFull TimeVancouver, BC
Want to join a dynamic, expanding tech startup? Accounts Payable automation is a growing solution domain. Beanworks Solutions Inc. is revolutionizing the world of accounting software by disrupting traditional solutions with its elegant, cloud-based software, BeanworksAP. We solve the pain of lost invoices, late payment fees and managing paper. We make controllers and AP managers rejoice by automating their manual accounts payables processes, giving them total visibility, control and reduced fraud risk.
Beanworks Solutions Inc. is conveniently located in downtown Vancouver, with easy access to transit and affordable parking. Our smart, diverse team values innovation, accountability and doing whatever it takes to get the job done, and done well.
The Principal Software Engineer - Front End takes a platform-first view of the Beanworks product portfolio. You, the ideal candidate, will enjoy the challenge of architecting and designing reliable and easy-to-implement components, front-end patterns, and web best-practices. In this role you care deeply about web performance, security standards, and accessibility. You’ll create the technical vision, build consensus, and work with the team to provide the platform and architecture we need to build beautiful, functional and responsive web and mobile front ends.
You will love this role if:
- You’re passionate about front-end architecture and development and you’re ready to lead a major front-end re-architecture project to take Beanworks to the next level in our ability to deliver an amazing user experience while optimizing for development efficiency and effectiveness.
- You balance your love of the latest and greatest with an equally strong ability to prioritize which technology choices and changes will pay off most for the team, the business, and our customers.
- You continuous integration and continuous delivery and know how to ensure continuous operation at scale.
- You write code with a test-driven approach and take great pride in the quality, resilience and performance of your code.
- You’re an excellent listener with strong communication skills and the ability to clearly visualize and present architecture solutions.
- You embrace change, are able to fail fast, learn quickly, and adapt to new challenges.
- Guide engineering vision for our Web and Mobile front ends.
- Architect important systems, and anticipate strategic and scaling-related challenges via thoughtful long-term planning.
- Set the technical direction for your team, working collaboratively with other senior technical staff, engineering managers, and product managers.
- Write excellent code and developer tests that set the standard for the team, pairing often with other developers on feature development, code reviews and bug fixing.
- Collaborate with the team to evaluate and implement frameworks and tools to help with software development, software quality, and software delivery.
- Collaborate on requirements specification in the form of BDD features and scenarios.
- Raise the bar: As a principal engineer you are the bar. Whenever you push your own limits, you push those of the company as well.
- Coach and mentor other engineers, both junior and senior.
- Through intelligent technology, architectural, tool and process choices, ensure that the team delivers extraordinary quality and quantity of output.
Required Skills & Experience:
- 7+ years in front end or full stack web application development, including at least 2 years as a technical lead or principal engineer.
- Advanced knowledge of software architecture, software design patterns, relational and non-relational databases, and API paradigms.
- Production experience using state-of-the-art architectural patterns and frameworks.
- Advanced knowledge and experience with front end languages, tools and frameworks.
- Proven ability to build performant, reliable, maintainable code that stands the test of time over a number of years.
- Strong skills in the design and development of cloud-based web and mobile applications with a focus on front end development.
- Advanced knowledge of Linux, Git, and Docker.
- Intermediate to advanced experience using a type-safe language
- Strong pair programming skills, both as a mechanism for producing better code, and for teaching
- Bachelor's Degree or higher in Computer Science or a related field, or equivalent experience
Desired Skills & Experience:
- Working knowledge of the BDD process, techniques and tools.
- Experience migrating an existing monolithic front end to a set of micro front ends.
- Experience designing and implementing a plug-in or add-on framework to allow a developer community to extend parts of an existing product.
- Experience working in a lean or agile startup environment.
- FinTech domain experience