We’re Arcules: an innovative, bold member of the Canon family. We move fast, operate on trust, and value our employees. Our engineering team is passionate about what they do at work and play. So come as you are, and join us on this path to transform video into intelligence with cloud-native development and bleeding-edge technologies. Let’s grow together.
Arcules offers excellent benefits, including a top-tier PPO medical plan, four weeks of vacation, three weeks of sick leave, 401(k) plan after three months of employment (4% company match), an on-site gym and game pavilion, an awesome work environment and more.
Overview of the Job
We are looking for a Principal Software Engineer with a passion and expertise for Front-End technologies and React ecosystems. This role will be the expert senior resource covering front-end engineering functions across multiple teams and ensure that the Arcules solution will have a modern, elegant and awesome user experience while keeping the technical solution scalable, maintainable and reliable. This person will also lead and mentor front-end engineers, consult and collaborate with other principal engineers to influence or drive front-end technical and architectural decisions and roadmap.
- Work with product and technology teams to understand roadmap priorities, innovate and evolve front-end feature sets for Arcules products
- Drive design and implementation decisions based on sound engineering design principles and best practices.
- Mentor senior engineers and technical leads to make sound technical decisions and help build effective engineering practices
- Champion good software engineering habits (e.g. clean code principles, security, tech debt balance, TDD, and agile habits) and apply pragmatic software design patterns to solve front-end engineering challenges
- Own, diagnose and resolve front-end technical issues and code defects.
- Produce design and code that focuses on user experience, testability, maintainability and scalability.
- Propose and drive the design and engineering enhancement to improve the front-end technical solution.
- Collaborate with other principal engineers to establish an engineering community of excellence (COE) to evangelize architecture, code or security reviews, innovative engineering and knowledge sharing.
- Drive a culture of technical excellence, continuous improvement and lifelong learning.
- Identify and work with SRE to implement opportunities for automation to enhance efficiency in the software delivery cycle and the reliability of the Arcules product.
- Maintain a strong understanding of front-end engineering innovation to contribute to Arcules product architecture and solution.
- Other duties as assigned
- 10 + years of experience in software engineering in a fast paced environment with most recent 8+ years in front-end development for microservice based solution
- Expert level with React and React ecosystem is a must
- Advanced experience with front-end testing and fully comfortable with
- Hands on experience developing applications deployed using public cloud infrastructure such as GCP, AWS or Azure.
- Advanced understanding of design patterns and coding practices especially as applied to front-end concern
- Thrive in a fast paced and at times chaotic environment
- Strong understanding of modern CICD methodology and Git based workflow
- Good understanding of application security, authentication and authorization
- Ability to communicate effectively within the organization via demonstrated written and verbal communication skills
- Strong knowledge of Docker technologies including experience in optimizing Docker image and managing Docker image lifecycle
- BS/MS degree (Computer Science) or equivalent
- Strong understanding of Microservices architecture style
- Strong understanding of software development and lifecycle management
- Good knowledge for software release tooling to include but not limited to Bitbucket, Gitlab, Github, Circle-CI etc.
- Good knowledge of web and front-end testing frameworks or tools in the React ecosystem as well as hands on experience with applying TDD/BDD to Front-end software engineering