Senior Software Engineer, Edge
Metropolis is seeking a Senior Software Engineer, Backend, to join our Advanced Technologies team. In this role, you will design, develop, and maintain scalable backend systems that integrate cutting-edge hardware with advanced machine learning to understand the behavior of objects in the real world. You'll work with a modern tech stack, including AWS, Java, Scala, gRPC and Protobuf, Redis, MySQL, PostgreSQL, Kubernetes, and Kafka, to deliver high-performance, reliable services. If you are excited about solving complex technical challenges and working at the intersection of distributed systems, real-time data processing, and scalable infrastructure, we would love to hear from you.
As a Senior Software Engineer, you will build robust, scalable, and maintainable backend services in Java and Scala to support mission-critical operations. You will design and implement gRPC APIs to enable high-performance, real-time data transfer between services. Leveraging Redis and MySQL, you will ensure efficient data storage and retrieval with reliability and low-latency access. Deploying and managing microservices on Kubernetes, you will optimize for scalability, resilience, and cost efficiency. Additionally, you will work with Kafka to build scalable, event-driven architectures for real-time data streaming and processing. Collaborating with Hardware, Machine Learning, and Operations teams, you will ensure seamless integration across the ecosystem and provide appropriate tooling. Analyzing and addressing bottlenecks in performance and scalability, you will maintain a focus on system reliability and data integrity.
The ideal candidate will possess a Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field, with over 8 years of experience in backend development, preferably within platform or core services. Proven expertise in industry-standard programming languages, preferably Java and Scala, is essential. Experience building gRPC APIs for efficient and reliable communication between services is required. A strong understanding of database design and optimization using Redis and MySQL is necessary. Familiarity with container orchestration and scaling using Kubernetes, as well as hands-on experience with Kafka for event-driven architectures, is expected. Exceptional analytical skills with a proven ability to tackle complex technical problems and design innovative solutions are crucial. The candidate should be a team player with excellent communication skills, a learning mindset, and a proactive approach to working across teams. Exposure to frontend integration with frameworks like Next.js is a plus.
Metropolis values in-person collaboration to drive innovation, strengthen culture, and enhance the Member experience. Our corporate team members adhere 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. The anticipated base salary for this position is $170,000.00 USD to $200,000.00 USD annually. The actual base pay offered is determined by a number of variables, including, as appropriate, the applicant's qualifications for the position, years of relevant experience, distinctive skills, level of education attained, certifications or other professional licenses held, and the location of residence and/or place of employment. Base pay is one component of Metropolis’s total compensation package, which usually includes healthcare benefits, a 401(k) plan, short-term and long-term disability coverage, basic life insurance, a lucrative stock option plan, bonus plans, and more.
When you join Metropolis, you’ll join a team of world-class product leaders and engineers, building an ecosystem of technologies at the intersection of parking, mobility, and real estate. Our goal is to build an inclusive culture where everyone has a voice and the best idea wins. You will play a key role in building and maintaining this culture as our organization grows.