The Role - Sr. Software Engineer - Client
We are seeking a highly skilled and experienced software engineer specializing in client-side development to join our team. In this role, you will play a pivotal part in shaping the future of our client applications, driving innovation, and creating exceptional user experiences. As a senior member of the team, you will have the opportunity to lead and mentor other developers while working closely with cross-functional teams.
This position is fully remote, but will include occasional travel for customer and partner visits, company offsites, conferences, and more. We work flexibly and support our team members to do their best work regardless of location.
You can build scalable web apps
You are curious and can work in ambiguity
You’re inquisitive and thrive working in a fast-paced, low-structure environment
Learning and curiosity drive you to learn new skills and develop a deep understanding of the problems that you’re solving
You care about users
Empathy for the users of our products
You spend most of your time coding but are driven by solving user needs
You contribute to design and product strategy discussions with a broad understanding of both the constraints and opportunities created by technology
You communicate and collaborate effectively and respectfully
You can communicate complex technical solutions and architectures in simplified terms
You strive to resolve conflict respectfully
You work well in small teams where many hats are worn at a time
You’re not afraid to ask for help
Additional nice-to-have experience
Shopify API, Shopify custom application development
Lead the development of client applications using browser-based technologies, ensuring high-quality, scalable, and performant solutions.
Collaborate with product managers, designers, and backend engineers to define and implement client application requirements and features.
Architect and develop reusable components and libraries to promote code reusability and maintainability across our applications.
Build and maintain automated testing pipelines for the client application including E2E and unit tests
Provide technical guidance and mentorship to junior developers, fostering a culture of continuous learning and growth.
Collaborate with cross-functional teams to define and implement best practices, coding standards, and development processes.
Minimum of 5 years of professional experience as a software engineer, with a focus on client/application development.
Extensive expertise in browser-based technologies (such as React and Vue) with a deep understanding of core principles, best practices, and ecosystem.
Demonstrated ability to quickly learn and adapt to new technologies
Experience in leading and mentoring other developers, fostering a collaborative and inclusive team environment.
Proven track record of delivering high-quality software products, following agile methodologies and delivering results in a fast-paced environment.
Excellent problem-solving skills, with a keen attention to detail and a drive for continuous improvement.
Strong communication and interpersonal skills, with the ability to effectively collaborate with cross-functional teams and stakeholders.
Bachelor's degree in Computer Science, Engineering, or a related field (or equivalent experience).
Experience with Flutter, Dart, and Go, or a strong desire and aptitude to learn and apply these technologies in real-world projects.
Familiarity with backend technologies and frameworks, such as Node.js and relational databases.
Knowledge of mobile application development and design patterns
Previous experience with Shopify apps