Senior Software Engineer - Core Services (Backend) at OneSignal

We are redirecting you to the source. If you are not redirected in 3 seconds, please click here.

Senior Software Engineer - Core Services (Backend) at OneSignal. Location Information: USA.  . About The Team:. OneSignal has grown rapidly. Today we are serving billions of HTTP requests. We achieved this scale by leveraging modern, high performance data-stores and writing scale-sensitive components in languages like Rust. This potent combination of high-performance, low-cost hardware with efficient resource utilization has given us an incredible competitive edge.. The Core Services team enables product development at OneSignal through the design, development, and operation of cross-cutting horizontal services, which form the backbone of our technical stack. This includes the delivery pipeline, responsible for delivering over 12 billion push notifications, SMS, and emails every day, gRPC services, and Kafka. You will work with Rust, gRPC, Redis, Kafka, Scylla, ClickHouse, Pulsar, PostgreSQL, and occasionally Golang and Ruby. The team is responsible for systems that operate on several hundred thousand events per second while maintaining durability and reliability.. As a Senior Software Engineer, you'll have the autonomy to take ownership of significant projects and directly impact our platform's performance and features. Your expertise will shape the way businesses engage with their users. Working remotely or on-site at our San Mateo office, you'll have the flexibility to create a schedule that works best for you, allowing you to excel in both your professional and personal life..  . What You'll Do. Collaborate with engineers to architect and implement high-performance services that are durable and reliable. Participate in code reviews, design reviews, and production on-call rotation. Work together with the team to resolve production issues and ensure system scalability. Conduct data analysis, performance monitoring, and system optimization through benchmarking/profiling.. Work independently to drive experiments and solutions for business needs. Design synchronous and asynchronous APIs for communicating between services in a large distributed system. Design schemas for relational and non-relational databases.  . What You'll Bring:. At least 6 years experience working as a software engineer. Experience operating reliable production systems at scale. Experience writing high performance code in a compiled language such as Rust, C/C++, Java, or Golang. Ability to reason about how data flows through distributed systems. Bias towards automating the boring stuff. We value a variety of experiences, and these are not required. It would be a added bonus if you have experience in any of the following: . Experience with relational databases. Experience designing and operating reliable production systems that process terabytes or petabytes of data per day. Experience with distributed system event streaming frameworks such as Apache Kafka or Pulsar. Experience with any of Redis, Scylla, Apache Cassandra, ClickHouse, gRPC. Experience profiling applications to improve performance in terms of time/CPU/memory. Experience debugging issues in distributed systems. Experience with Docker and Kubernetes.  . The New York and California base salary for this full time position is between $170,000 to $190,000. Your exact starting salary is determined by a number of factors such as your experience, skills, and qualifications. In addition to base salary, we also offer a competitive equity program and comprehensive and inclusive benefits.