iOS Developer
Job description
Tinybeans is a leading private photo-sharing app that connects families and turns moments into memories. We’re loved and trusted by millions of parents and families around the world since our founding in 2012, which is why we’ve got more than 150,000 5-star reviews in the Apple App and Google Play stores and users in almost every country in the world.
Helping parents capture and safely share those “blink-and-you’ll-miss-them” snapshots with friends and relatives near and far is the best job in the world, and it just so happens to be ours.
Your Part in Our Mission:
As an iOS Engineer your primary focus will be the development of iOS applications and their integration with Tinybeans back-end services. To succeed in this role, you must be a strong programmer and a creative problem solver who thrives in a fast-paced environment and works in a cross-functional team. You love building an elegant user experience and are passionate about improving developer productivity. You enjoy learning new things and building life-changing applications. You are excited about developing new features, as well as maintaining existing code, fixing bugs, and contributing to overall system design. You care deeply about software architecture and writing code that is robust and maintainable for the future. The Tinybeans team operates across multiple time zones, and for this position, a minimum of 5 hours of Eastern Time (ET) overlap is required.
Note: Research indicates that women and individuals from marginalized groups tend to apply only when they meet all of the criteria. After reading the below, if you believe you’re qualified, but don’t necessarily check every box, please submit an application.
What You’ll Be Doing…
- Participate in various stages of the app development lifecycle, including design, building, testing, and deployment under guidance.
- Swiftly assess new technologies or frameworks, driving the advancement of API usage in the Tinybeans apps.
- Collaborate with cross-functional teams to define platform best practices, improve test coverage, and ensure code quality through code reviews.
- Work closely with Engineers, Product Managers, and UX Designers to develop, test, and release new features.
- Optimize app performance to uphold high quality and responsiveness standards.
- Contribute to the adoption of Swift and SwiftUI in the Tinybeans app.
- Identify and rectify performance bottlenecks, actively participating in bug resolution.
- Stay informed about the continuous evolution of mobile development, addressing compatibility issues arising from new OS versions, emerging or deprecated 3rd-party frameworks/dependencies, and security changes.
Who We’re Looking For…
- Have a passion for creating clean, scalable, and maintainable architectures
- Enjoy learning new technologies, and are constantly looking for new challenges
- Strive to not only meet, but exceed a user’s expectations
Tinybeans Employee Perks include….
- Offer you a remote work schedule but give loads of opportunities to connect with the team virtually, and sometimes, in-person
- Welcome you to be part of a publicly traded company with a global reach
- Offer you competitive compensation + yearly stock options (All US & AUS FTE)
- Health, dental, vision, FSA, Commuter Benefits and 401K (Benefits may vary based on location)
- Encourage you to recharge your batteries; generous time off policy, mental health days, additional sick & personal time and 11 paid holidays.
- Up to 12 weeks of paid family leave
- We have expanded our benefits to Canada, Australia, and other countries!!
*Please note depending on location this may be a contract-to-hire role.
The compensation range for this position is designed to align with the cost of labor in both U.S. and international markets. The base pay for this role ranges from $80,000 to $100,000 per year. Compensation is influenced by several factors, including market location, and may vary based on job-related knowledge, skills, and experience.
Job requirements
You must have…
- Intermediate level of experience developing iOS applications (3-5 years)
- Proficient with Swift, Combine.
- Comfortable Multi-threading, and CoreData
- Comfortable using Objective C and refactoring legacy code to Swift.
- Experience interfacing with REST back-ends
- Experience with unit and UI testing via Apple XCTest framework
- Understanding of Apple’s design principles and interface guidelines
- Experience with code versioning tools such as Git
- Familiarity with agile and scrum methodologies
- Ability to work effectively in a collaborative team environment.
- Strong communication skills, both verbal and written.
- Creative problem-solving skills and the ability to troubleshoot and debug issues.
- Eagerness to learn and adapt to new technologies and methodologies.
Preferred but not required
- Bachelor’s or Master’s degree in Computer Science, Software Engineering, or a related field.
- Experience using Xcode Instruments to identify memory leaks, performance issues and fix them.
- Experience or Interest in learning CI, CD, and CT.
The Company is an equal opportunity employer and considers all applicants for employment without regard to race (including, without limitation, traits historically associated with race, such as natural hair, hair texture, and protective and treated or untreated hairstyles), color, creed, religion, sex, sexual orientation, marital or civil partnership/union status, national origin, age, disability, pregnancy, genetic predisposition, genetic information, reproductive health decision, sexual orientation, gender identity or expression, alienage or citizenship status, domestic violence victim status, military or veteran status, or any other characteristic protected by federal, state/province or local law. The Company complies with applicable state and local laws prohibiting discrimination in employment in every jurisdiction in which it operates.