Compass logo
Compass Verified
Real Estate, PropTech, Technology, SaaS

Software Engineer - Mobile, iOS

New York, NYOnsiteFull Time$126,000–$141,000 /yrPosted 23 days agoVisa sponsorship available

Is this role right for you?

Upload your resume and get a skill-by-skill breakdown — see exactly where you match, where you're close, and what to highlight. Not a mystery percentage.

Get a tailored resume highlighting what this role needs.

Required skills

  • Swift
  • SwiftUI
  • Swift Concurrency
  • App Store
  • RESTful backend services
  • Computer Science fundamentals
  • iOS design patterns

Nice to have

  • reactive programming
  • Scrum/Agile

Role summary

Compass is seeking an iOS Engineer to build a delightful mobile platform for home buying/selling. You will collaborate with Product, Design, and Engineering teams to deliver features, ensuring adherence to best practices and operational excellence. Responsibilities include component development, code reviews, testing, and documentation. The role requires 2+ years of iOS development experience with Swift, familiarity with modern Swift practices (SwiftUI, Swift Concurrency), and experience with RESTful APIs. Knowledge of CS fundamentals and iOS design patterns is essential. Exposure to reactive programming is a plus. The position offers a base salary range of $126,000 - $141,000 annually, along with bonuses, stock options, and comprehensive benefits.

At Compass, our mission is to help everyone find their place in the world. Founded in 2012, we’re revolutionizing the real estate industry with our end-to-end platform that empowers residential real estate agents to deliver exceptional service to seller and buyer clients.

We are looking for an iOS engineer to help Compass build a mobile platform that makes the home buying or selling experience delightful. You will work with other engineers and your Product and Design counterparts to contribute to team design, scoping, and prioritization discussions for well-defined features. You will independently build components and deliver features with some guidance, ensuring our implementation meets software engineering best practices.

Outside of product-driven projects, you will work with other engineers to determine how to push our platform forward, devising engineering-led initiatives that ensure we can work quickly and efficiently while maintaining a high standard of operational excellence.

What you will do:

  • Work in a startup-like environment building agile products and services
  • Collaborate closely with engineers on your team, engineers on other teams, as well as your product and design counterparts to successfully launch projects which solve real-world customer problems
  • Work independently and deliver features with some guidance while understanding technical trade offs, weighing different approaches, and arriving to a recommended solution
  • Perform code reviews, participate in team design reviews, and write high quality tests
  • Apply testable, maintainable, and stable approaches to your work
  • Hold yourself to a high standard of code quality and operational rigor
  • Develop expertise in one or more components within your team's domain
  • Create clear and concise documentation (diagrams, service descriptions, decisions, runbooks)
  • What we look for:

  • BS in CS or equivalent practical experience
  • 2+ years of professional iOS development experience using Swift and shipping apps to the App Store, including familiarity with modern Swift development practices, such as SwiftUI, Swift Concurrency. Exposure to reactive programming frameworks is a plus.
  • Ability to collaborate with Product, Design and Engineering stakeholders to implement solutions which surprise and delight our customers
  • Knowledge of Computer Science fundamentals and iOS design patterns and best practices
  • A keen eye for design and attention to detail. The products you build should not merely be functional but should also be well-crafted and user-friendly
  • Experience integrating with RESTful backend services
  • Experience with Scrum/Agile development methodologies
  • Excellent verbal and written communication skills
  • Compensation:

    The base pay range for this position is $126,000 - $141,000; however, base pay offered may vary depending on job-related knowledge, skills, and experience. Bonuses and restricted stock units may be provided as part of the compensation package, in addition to a full range of benefits. Base pay is based on market location. Minimum wage for the position will always be met.

    Perks that You Need to Know About:

    Participation in our incentive programs (which may include eligible cash, equity, or commissions). Plus paid vacation, holidays, sick time, parental leave, and recharge leave; medical, tele-health, dental and vision benefits; 401(k) plan; flexible spending accounts (FSAs); commuter program; life and disability insurance; Maven (a support system for new parents); Carrot (fertility benefits); UrbanSitter (caregiver referral network); Employee Assistance Program; and pet insurance.

    Do your best work, be your authentic self. At Compass, we believe that everyone deserves to find their place in the world — a place where they feel like they belong, where they can be their authentic selves, where they can thrive. Our collaborative, energetic culture is grounded in our Compass Entrepreneurship Principles and our commitment to diversity, equity, inclusion, growth and mobility. As an equal opportunity employer, we offer competitive compensation packages, robust benefits and professional growth opportunities aimed at helping to improve our employees' lives and careers.

    Notice for California Applicants

    Los Angeles County Fair Chance Notice

    Sample Compass interview questions

    • 1

      Build a distributed logging service for large-scale systems.

      system designmedium
    • 2

      Count Anagrammatic Substrings Count the number of anagrammatic substrings from one string present in another. Input: s = "abab", p = "ab" Output: [0, 1, 2] Explanation: The substrings "ab", "ba", and "ab" starting at indices 0, 1, and 2 respectively are all anagrams of the string "ab".

      codingmedium
    • 3

      Merge K Sorted Linked Lists Merge K sorted linked lists. Input: lists = [[2,2,3],[1,5]] Output: [1,2,2,3,5] Explanation: Extracts the smallest current node iteratively using a priority queue to build a single merged and sorted linked list.

      codingmedium
    • 4

      Longest Consecutive Sequence Determine the length of the longest consecutive elements sequence. Input: nums = [0,3,7,2,5,8,4,6,0,1] Output: 9 Explanation: The longest consecutive sequence is 0 through 8 (length 9), utilizing a hash set to check connectivity in linear time.

      codingmedium
    • 5

      Sort a String by Frequency Sort a string by the frequency of its characters. Input: s = "cccaaa" Output: "cccaaa" or "aaaccc" Explanation: Both 'c' and 'a' appear three times, so sorting them by descending frequency keeps them grouped equally.

      codingmedium

    Get started to unlock a personalized interview prep pack for this role.

    Ready to apply?
    You'll be redirected to Compass's application page.

    Similar roles

    See how RiseMe works

    Match, tailor, and prep so you send fewer applications and land more interviews.