We are looking for a Senior macOS Engineer to join our Setapp team.
Setapp is MacPaw’s subscription-based app service for macOS and iOS. It provides access to 240+ Mac and iOS apps for daily tasks that cover such categories as productivity, lifestyle, web development, Mac maintenance, creativity, writing, education, and personal finance.
We are looking for an Engineer who quickly finds solutions without sacrificing quality, is eager to take technical ownership, and likes to provide technical mentorship for less experienced peers.
Sounds interesting? Don’t hesitate to share your CV with us!
In this role, you will:
- Analyze (how to do?) and validate (can be done?) technical solutions for the business problems/ideas/needs. Suggest alternatives and explain their pros and cons
- Contribute to the product with ideas, features, and improvements
- Based on the product's technical challenges, research, assess, and select relevant architectural solutions that would cover the product requirements, and suggest and approve the usage with the team
- Implement technical solutions and adapt them to the product’s changes in the future
- Integrate and implement new approaches or development processes to improve the product's business value
- Investigate and analyze fatal issues and critical failures on the product, and access and eliminate security weaknesses and vulnerabilities in the code. Share this information with other engineers to avoid the same or related issues in the future and enhance the overall security of the software
- Communicate with the stakeholders to clarify implementation details and edge cases, specify input or missing data, and discuss possible use cases/flows in order to successfully implement a solution and make constructive collaborations if needed
- Provide input for customer support to resolve user issues and conduct technical communication with customers if needed to maintain customer satisfaction, loyalty, and retention
- Share all knowledge about the product (structure, documentation, architectural details, etc.) with the engineering team to keep the team well-informed about the product's state
- Participate in growing the company's engineering culture by being an active early adopter of changes in engineering processes
Skills you’ll need to bring:
- macOS/iOS development experience
- Profound Swift experience
- Profound computer science fundamental knowledge (memory management, concurrency, networking, data persistence, unit testing, profiling, system design, etc.)
- Modular project organization knowledge (dynamic/static libraries, linking, dependency management, etc.)
- Experience in creating extensions and frameworks
- At least an intermediate level of English
As a plus:
- Experience in Objective-C development for supporting legacy modules
- Swift structured concurrency experience
- Meta-programming (Sourcery, Swift macro)
- Understanding of application infrastructure (how backend services work)
- Experience with interprocess communication
- Experience in creating system extensions, Login Items, Launch Agents, Privileged Helpers, etc.
- Experience with cryptography libraries