Our Engineering Team:
At Knak, we build groundbreaking software used by marketers at many of the world’s top companies. As engineers, we foster a transparent, collaborative and blameless culture. We emphasize continuous learning and encourage our engineers to experiment in search of creative ways to solve problems and help our customers.
We have a small but rapidly growing team where you'll be given many opportunities to grow and hone your skills across our entire tech stack. Our belief is that to build great software, we have to equip ourselves with the best tools, technologies, and processes.
Roles and Responsibilities:
We are looking for a Senior Front End Developer to join our growing engineering team. As a Senior Developer, you will be responsible for developing user-friendly, high-performance web applications using a variety of web technologies. You will work closely with team leads, product managers and design teams to create compelling user experiences built upon scalable and reliable systems.
- Collaborate closely with product managers, designers, and front-end developers to create intuitive and responsive user interfaces using Vue.js. Implement efficient state management and UI components to deliver a seamless user experience across various devices and screen sizes.
- Design and write scalable, modular, and reusable code that anticipates future growth and complexity while maintaining readability and ease of maintenance.
- Evaluate and make informed trade-offs between performance, maintainability, and development speed to deliver front-end applications that are fast, reliable, and optimized for a wide range of devices and network conditions.
- Actively participate in code reviews to ensure code quality, maintainability, and adherence to coding standards. Provide constructive feedback to peers and collaborate with them to identify and address areas for improvement.
- Work closely with cross-functional teams, including product management, QA, and DevOps, to analyze business requirements and technical objectives. Contribute to the design and implementation of solutions that align with both business needs and technical constraints, fostering a culture of collaboration and innovation within the team.
- Contribute to the growth and development of others on your team through coaching and mentorship while maintaining a high bar for excellence and technical curiosity.
Qualifications:
- Bachelor's degree in Computer Science or a related field, or equivalent work experience.
- 6+ years of software development experience, with a proven track record of building and maintaining web applications
- Solid understanding of JavaScript frameworks such as VueJS/React/Angular and their ecosystem, build and deployment patterns.
- Proficiency in modern TypeScript, with the ability to write clean, maintainable, and strongly typed code that leverages the latest language features and best practices.
- A good understanding of RESTful APIs, including authentication, validation, and error handling.
- Experience with TDD and automated testing frameworks such as Jest and Playwright
- A keen eye for observability, monitoring, and performance optimization.
- Familiarity with common SaaS architecture/release concepts, such as continuous deployments, multi-tenant architectures and services layered architecture.
- Demonstrated ability to design and build scalable and high-performance web applications.
- Strong understanding of Microservices, Event driven architecture and their implementation and rollout.
The Ideal Candidate will have
- An ability to drive technical decision-making and foster a culture of continuous improvement within the team.
- A strong eye for user experience (UX) design, with the ability to recognize and implement intuitive, user-friendly interfaces that enhance usability and accessibility.
- An understanding of SaaS software development practice, previous experience working on a SaaS product will be viewed favorably.
- Experience working with Vue.js.
- Familiarity with common SaaS architecture/release concepts, such as continuous deployments, multi-tenant architectures and services layered architecture.
- Knowledge of continuous integration and continuous deployment (CI/CD) practices using GitHub Actions
- An ability to make effective tradeoffs that consider business priorities, user experience, and a sustainable technical foundation.
Goals
- Be part of a full software development life cycle, from conception to deployment.
- Be a team player with an eye for visual design and software usability.
- Champion the adoption of clean, maintainable, and reusable code practices to foster efficient, scalable, and collaborative development.