Senior Software Engineer at Cricut (Salt Lake City, UT)
Company Description
Cricut® makes smart cutting machines that work with an easy-to-use app, an ever-growing collection of materials, and crafting essentials to help you design and personalize almost anything — custom cards, unique apparel, everyday items, and so much more.
Let’s make.
Overview
We believe everyone is born creative. We’re a diverse tapestry of thinkers, dreamers, givers, DIYers, handi-workers, artisans, and forever and always architects of things.
At Cricut, we place the power of handmade into the hands of all. We give you beautiful, easy-to-master tools so you can make something unique, remarkable, perfect. We surround you with ideas, community, inspiration, and encouragement to take your creativity further than you ever imagined. And as a community, we celebrate the exhilarating act of making every single day.
So, make that handcrafted card that feels like a hug. Design a shirt for fun, for family, or for a full-blown business. Craft with a passion or for a purpose. Make something big and bold, itsy-bitsy, amazingly ambitious, or just plain silly. Whatever you make, just make your heart out. Because here’s the remarkable truth: When we all make together, we make all things possible.
Let’s make.
Job Description
Cricut is looking for a Senior Software Engineer to develop, extend, monitor, configure, and troubleshoot complex manufacturing automation software. You will be responsible for developing software tools to automate and test our wide range of cutting machines and other hardware manufacturing.
Job Responsibilities:
- Develop and extend software tools which automate, analyze, and monitor manufacturing of hardware products
- Identify opportunities for automation within manufacturing processes.
- Provide support for the real-time manufacturing software tools. Manage and improve operational infrastructure
- Handle configuration, testing, installation, monitoring of automation and testing tools
- Handle requests sent by manufacturing facility, communicate follow-up with manufacturing teams and work with other groups on resolving issues
- Participate in all facets of a project’s life cycle from design, implementation, testing, documentation and deployment, with a focus on deployment and production support
- Help design and develop real time software components
- Coordinate with other technology groups around releases and upgrades
- Interact with developers, manufacturing engineers and remote support staff
Qualifications
- Master’s degree in Computer Science, Mathematics, Engineering, Physics, or another Quantitative field
- Proven hands-on Software Development - 3+ years experience
- Experience in programming using C/C++
- Experience in Java or Kotlin development
- Strong software debugging abilities
- Must be able to solve problems in a high-pressure environment, multitask, prioritize tasks, and learn on the go
- Experience in SQL and databasing is preferred
- Firmware knowledge will be an added advantage
- Experience in computer vision development is preferred
Additional Information
What to Do Next:
Please attach your resume including links to your portfolio where applicable. If you want to show your super powers in other ways – include that information too. You can be sure that Cricut® is an employer who values individuality, equality and diversity, so tell us what you’re all about. If you are a Maker or a DIY enthusiast, whether you think you are a good one or not, we would love to hear about it when you send us your information!
At Cricut®, we celebrate inclusion and diversity. Cricut is an equal opportunity employer and makes employment decisions based on merit. Cricut prohibits discrimination based on race, color, religion, sex, sexual identity, gender identity, marital status, veteran status, nationality, citizenship, age, disability, medical condition, pregnancy, or any other unlawful consideration. All your information will be kept confidential according to EEO guidelines. Cricut participates in E-Verify.