Senior Software Engineer, Frontend
Free to start · No card · 5 credits the moment you sign up
Job description
About Us
Zoo is building the next generation of hardware design tools redefining how hardware products are designed, developed, and built. Our platform combines a modern, cloud-native CAD environment with AI-powered engineering workflows, helping teams design, iterate, and manufacture products faster than ever before. We are headquartered in Los Angeles, CA with both a local and remote team. We were founded and incubated by Embedded Ventures in 2021.
About You
We’re looking for curious, innovative, and ambitious self-starters to join our growing team to help us bring our mission to life. We think you’ll thrive on our team if you’re:
- Curious at your core, with an eagerness to learn and do things differently
- Customer-focused, always thinking about ways to improve the user experience
- Able to operate autonomously and work asynchronously, while also being an effective team player
About The Role
As a Senior Frontend Engineer at Zoo, you'll play a crucial role in the development and enhancement of our novel open-source CAD modeling app, Zoo Design Studio. This unique, DSL-driven application leverages traditional CAD UI for code generation/editing while streaming a 3D scene from our remote graphics engine. This is a "back of the front-end" role, where your efforts will be instrumental in creating and gluing features together from our UI that drives DSL code-mods, triggering executions with our Rust/Wasm DSL, or interfacing with our backend's WebSocket API and doing so in an extensible way. We're looking for a seasoned Engineer with substantial experience building highly performant, scalable web applications with a deep understanding of performance optimization techniques. This is an awesome opportunity to significantly impact one of our core products during this critical phase of growth for our team.
What You’ll Do
- Develop and optimize the frontend of our modeling app, focusing on performance and user experience
- Collaborate with backend teams to design and implement robust APIs that support the app's code-driven design functionality
- Enhance the app's UI/UX by leveraging Typescript, React, and XState, ensuring that the interface is both powerful and easy to use
- Develop delightful CodeMirror extensions that bridge the gap between the user's code and the 3d-model
- Implement advanced AST/code-mods, CodeMirror enhancements, and deep integration with WebAssembly (Wasm) for performance improvements
- Utilize Xstate for state management to maintain app consistency and reliability across various user interactions
- Apply a deep understanding of JavaScript and browser internals to improve app functionality and performance
What You’ll Need
- B.S. in Computer Science or a related field, or equivalent professional experience
- Substantial experience in frontend software development building complex, highly performant and scalable applications
- Strong proficiency in Typescript and React, with a portfolio or examples of complex applications built using these technologies
- Deep knowledge of JavaScript and its internal workings and performance optimization techniques
- Familiarity with WebAssembly (Wasm) and its use in web applications for performance enhancements
- Understanding of browser internals across major browsers (Chrome, Firefox, Chromium, Brave, etc.) and their impact on application performance and compatibility
- Knowledge of Xstate or similar state management libraries
Nice to Have
- Proficiency with Rust
- Experience with CodeMirror6
- Experience with ASTs even if custom ESLint rules
- Experience with WebGL or web graphics
- A background in geometry and/or experience with design-based software
The salary range for this role is provided below. The final offer will depend on multiple factors including candidate experience, skills, expertise, and market data. Compensation may vary by geography.
In addition to salary, we offer competitive equity as well as a full benefits package which may vary by geography as well.
Zoo is an equal-opportunity employer committed to creating a diverse and inclusive workplace. The Zoo team is made up of incredibly talented and unique individuals from across the globe. All qualified applicants will receive equal consideration for employment without regard to race, color, religion, sex, gender identity, sexual orientation, national origin, disability, Veteran status, age, or any other trait that unfairly targets a group of people. We encourage everyone interested in our mission to apply!
Originally posted on Himalayas
Prepare your application
Use the description above to assess your fit for Zoo Corporation. This checklist is guidance from Resumize, rather than additional requirements from the employer. Imported listings can be shortened or change after collection, so confirm the complete description and current availability before sending an application.
Match requirements to evidence
Identify the responsibilities and skills the employer explicitly names. For each important requirement, choose one example from your work, education, training, or projects. Explain what you did, how you did it, and what changed as a result. Include a measurable outcome when you can support it. If you lack a requirement, describe related experience accurately instead of adding an unfamiliar skill to your resume.
Put the most relevant examples near the top of your resume. Keep job titles, dates, qualifications, and contact details consistent across your application materials. Use the employer’s terminology when it describes your experience accurately; a copied list of keywords does not explain your contribution. A short, specific bullet is easier to review than a paragraph that mixes several unrelated duties.
Check the working arrangement
Confirm the location, schedule, employment type, and any eligibility requirements on the employer’s site. A remote label does not establish worldwide eligibility or flexible hours. If compensation, benefits, equipment, travel, or contract duration are missing from this listing, write down your questions for the recruiter. Do not assume details from another opening at the same company apply to this role.
Review before submitting
Follow the employer’s requested file format and application instructions. Open your exported resume and check that its text is selectable, its sections read in order, and its links work. Proofread names, dates, and contact information. Share confidential work samples only when you have permission, and use an anonymized example when necessary.
Submit through a trusted employer or recruiting destination. If the original listing has disappeared, search the employer’s careers page for the title rather than assuming the vacancy remains open. Save the application date, job reference, and the version of your resume you sent. Those details help you prepare for a later conversation and avoid submitting conflicting information through several job boards.
Review your resume for writing and readability feedback, or browse other openings if this opportunity is unavailable.