Senior Software Engineer, Product Foundations
30 days ago
New York
Job DescriptionWho we are Metropolis is an artificial intelligence company that uses computer vision technology to enable frictionless, checkout-free experiences in the real world. Today, we are reimagining parking to enable millions of consumers to just "drive in and drive out." We envision a future where people transact in the real world with a speed, ease and convenience that is unparalleled, even online. Tomorrow, we will power checkout-free experiences anywhere you go to make the everyday experiences of living, working and playing remarkable - giving us back our most valuable asset, time. Who you are Metropolis is seeking a Senior Software Engineer for our Product Foundations team to architect and build Metropolis Web Services (MTWS), the foundational, composable substrate for all current and future products. You will play a key role in building the technical foundation that supports our expansion into new mobility verticals and markets. This role requires an individual who thrives in fast-paced environments where technical excellence is paramount, eager to mentor others while driving architectural best practices. Working alongside a team dedicated to distributed systems and reliability engineering, you will collaborate closely with Application Development, Infrastructure, and our Advanced Technologies group to power the future of mobility commerce. You will solve complex, large-scale distributed systems challenges, tackling deep systems problems that demand exceptional analytical skills, systems thinking, and a passion for efficiency to build the technical backbone of our rapidly scaling business. What you'll do • Design and build the core services of Metropolis Web Services including IAM, notifications, and message processing, • Build and maintain service mesh infrastructure to enable secure and observable communication between microservices, • Create sophisticated developer tooling and CI/CD pipelines that enable teams to ship code safely, • Make critical technical decisions regarding service boundaries, API design, and data consistency patterns, • Architect and optimize systems for high throughput and low latency to support millions of transactions, • Establish monitoring, alerting, and reliability practices that ensure 99.99% uptime for mission-critical infrastructure, • Drive architectural discussions and establish engineering best practices across the organization, • Mentor other engineers while contributing directly to complex technical implementationsWhat we're looking for, • Bring 8+ years of backend software engineering experience with a focus on distributed systems, • Demonstrate expert-level Java proficiency with a deep understanding of JVM performance and concurrency, • Possess production experience with microservices architecture, Kubernetes, and AWS, • Exhibit strong systems thinking skills with the ability to design high-availability distributed systems, • Maintain deep knowledge of databases, event streaming (Kafka, SQS), and caching strategies, • Utilize AI-powered development tools such as Claude Code or GitHub Copilot for enhanced productivity, • Communicate complex technical designs effectively and lead technical discussions across team, • Reside in the New York City, Seattle, or Los Angeles areaWhile not required, these are a plus:, • Have experience with Scala, • Possess an advanced degree in Computer Science, Engineering, or a related technical field, • Hold security and compliance expertise, particularly regarding authentication and secrets management, • Possess experience scaling systems through rapid expansion in high-growth environments, • Demonstrate distributed systems expertise through open source contributions or technical blog writing, • Have performance optimization experience with profiling, benchmarking, and system tuning at hyperscaleOur Stack, • Languages + Frameworks: TypeScript, React, Scala (principally), Java (limited), • Datastores: MySQL, PostgreSQL, Snowflake, • Cloud: AWS, • Version control: Git & GitHub, • AI Tooling: Copilot on GitHub Metropolis values in-person collaboration to drive innovation, strengthen culture, and enhance the Member experience. Our corporate team members hold to our office-first model, which requires employees to be on-site at least four days a week, fostering organic interactions that spark creativity and connection Metropolis may utilize an automated employment decision tool (AEDT) to assess or evaluate your candidacy for employment or promotion. AEDTs are used to assist in assessing a candidate's application relative to the required job qualifications and responsibilities listed in the job posting. As part of this process, Metropolis retains data relevant to your candidacy, including personal information, for a period that is reasonably necessary for the use of the tool. If you are hired for the position, your data may become part of your employee records. Metropolis Technologies is an equal opportunity employer. We make all hiring decisions based on merit, qualifications, and business needs, without regard to race, color, religion, sex (including gender identity, sexual orientation, or pregnancy), national origin, disability, veteran status, or any other protected characteristic under federal, state, or local law.