Senior iOS Mobile Engineer

  • South Jordan, UT, USA
  • Employees can work remotely
  • Full-time
  • Department: Software Engineering

Company Description

Company Description 

Our mission is to help people lead creative lives. At Cricut®, we believe that we are all born makers. When we built our first cutting machine, we saw the potential for a simple yet powerful tool to completely transform the way people craft, design, and DIY. Since then, we continue to innovate with new machines, platforms, materials, and tools. Who are we? A bustling worldwide community, a means for connection, and an outlet for unbridled creativity. We value, hard work, getting things done and having fun while we do it. The Cricut team is dynamic, diverse, and inclusive, join us as we place the power of handmade into the hands of ALL. 

Perks & Culture  

Our team is AMAZING, we cannot wait for you to meet everyone. Our cultural mantras and values are not just a poster on the wall. We ask tough questions, entertain ideas outside of our own, and work together to make something that is bigger than ourselves. Cricut’s growth will not be stopped, upon joining Cricut you will be welcomed into a global community with coworkers located in China, the U.K., Australia, New Zealand, as well as Europe and South America (just to name a few.) We train, develop, and celebrate great work; not to mention we throw an unbelievable water balloon fight and a Halloween party that will leave you planning your costume for next year all year long.  

Perks: 

We take care of our team. From outstanding medical, dental, vision, and retirement benefits, to pet insurance, 401K match, paid Parental Leave, life insurance, wellness incentive programs, paid time off, on-site massages, phenomenal work-life balance, and employee discounts.  

Job Description

Cricut is looking for a talented Senior iOS Mobile Engineer to help us take our iOS native apps to the next level. The position demands a candidate capable of doing high-quality work against technical and schedule challenges, while following strong software design and process principles. This is a great opportunity to play a key role in a dynamic team, working on cutting edge mobile technology. You are a driver of change and you have yet to meet a technology challenge you cannot resolve. You are dedicated to developing clean code that will help shape the iOS mobile software which thrills our users.

 

Responsibilities

  • Work collaboratively with fellow department members, project managers, test engineers, and designers to develop and maintain Cricut iOS applications as well as “Proof of Concepts” and “Prototypes”
  • Contribute to high quality mobile app design and architecture
  • Apply software engineering design patterns to develop well-structured, modular, performant application code
  • Serve as a technical mentor in mobile app development
  • Perform code reviews, write unit and UI tests, and contribute to architectural planning and refactoring
  • Collaborate with API teams on API design

Qualifications

  • B.S. or M.S. in Computer Science, Software Engineering or comparable field with 5+ years relevant experience
  • Extensive experience developing iOS mobile native applications in Swift/SwiftUI
  • Solid understanding of the full iOS mobile development life cycle
  • Strong knowledge of iOS UI design principles and best practices
  • Experience with at least one of these design architectures: MVVM, MVC, VIPER, Clean (Onion Architecture)
  • Expert in UI layouts and creating adaptive layouts for various hardware configurations
  • Experience writing custom views and controls
  • Experience consuming RESTful JSON/XML web services
  • Experience in testing high volume applications: unit test, integration test, performance test
  • Experience using external commercial and open source libraries
  • Experience with Git and GitFlow
  • A solid grasp of fundamental algorithms, data structures, and design patterns
  • Portfolio of apps that you’ve built; ideally available in the App Store
  • Ability to prototype new features and redesign existing ones
  • Excellent problem solving, debugging skills, critical thinking, and communication skills
  • Ability to effectively articulate technical challenges and solutions
  • Aptitude and desire to independently learn new technologies

Preferred Skills

  • Experience in Core Animation, Core Graphics, Core Bluetooth (Classic, BLE)
  • Experience in automated user interface functional testing
  • Experience with Scrum/Agile methodologies
  • Experience mentoring junior members
  • Experience with iOS performance profiling tools and optimization techniques
  • Experience with Open API standard (Swagger)
  • Experience with push notifications
  • Working knowledge of Internationalization
  • Proficient in Objective-C

Bonus Skills

  • Proficient in C, C++
  • Experience in continuous integration and delivery (e.g. Bitrise)
  • Experience releasing app to TestFlight and the App Store
  • Experience with Google Firebase Analytics and Crashlytics
  • Experience in developing Android mobile native applications in Kotlin/Java

Additional Information

  • Equal Opportunity: Cricut is an equal opportunity employer. We celebrate diversity and are committed to creating an inclusive environment for all employees and members. Applicants will be considered based on their qualifications and without regards to age, race, ethnicity, gender identity or expression, national origin, religion, physical or mental disability, protected veteran states, sex (including pregnancy), sexual orientation or any other protected characteristic protected by applicable laws, regulations or ordinances. 
  • ADA: If you require reasonable accommodation during the application or selection process please do not hesitate to reach out to Cricut HR or your assigned recruiter.