What are the responsibilities and job description for the Design Systems Engineer position at Capsule?
About the Role:
As a Design Systems Engineer at Capsule, you will be responsible for the production of reusable UI components that are consumed by other engineers. This role enables feature delivery frontend engineers to be more efficient by designing and implementing an ergonomic, flexible, high-quality design system that satisfies the vast majority of Capsule’s front-end experience use cases.
- Work with the designer to understand all the potential needs and use cases of the system. Suggest structures and configurations that strike the right level of abstraction needed to reduce complexity and prevent re-work in the future.
- Work with design and engineering to design component APIs that are easy to understand and work with. Identify and implement ways to reduce complexity, prevent errors, and increase the velocity of other engineers.
- Work with design and engineering to name and organize components in a way that is usable and intuitive. (E.g. what repo do components live in, how are they accessed by other projects, etc.)
- Implement components using React, Typescript, and Styled Components. Render and unit test UI components using Storybook.
- Work with design to prototype and stress-test designs. (E.g. pull real data and map through it to identify gaps and unaccounted-for edge cases with current designs.) Create and systematize solutions to solve any issues identified. (E.g. empty states, loading states, error states, etc.)
- Ensure components support keyboard navigation and meet accessibility standards.
- Write documentation for how to use and maintain the system, and provide guidance on best practices for how to compose/extend the system when needed.
- Collect feedback on how to improve. Track issues and requests. Maintain and add to the system.
- Work with design and engineering to create, extend, or compose components as new use cases and needs arise.
- Assist in refactoring existing code/features to use new and improved components when and where it makes sense to do so.
About You:
- You drive results in a way that makes everyone better. You accomplish ambitious objectives while uplifting the team around you. You're a magnet for team members looking to get better and be successful.
- You can work both fast and right and don't view them as trade-offs. You understand when things require precision and accuracy and where 80% gets you to the desired outcome.
- You operate like an owner and expect others to as well. You take personal responsibility and value personal responsibility in others.
- You check your ego at the door. You are interested in finding the right answer vs. always having the right answer.
Requirements
- 5 years of overall software engineering experience.
- 3 years of JavaScript/Typescript experience, including concepts such as asynchronous programming, closures, types, and ES6 .
- Experience contributing to the architecture and system design (architecture and design patterns) of new and current front-end component libraries and systems.
- You have been part of a team that owned software components critical to business.
Nice to have:
- Experience deploying applications through AWS
- A CS degree or equivalent
The starting anticipated earnings for this position is between $170,000 and $210,000. Compensation packages include base pay, competitive benefits, and may include equity in the form of RSUs.
Salary : $170,000 - $210,000