Senior Software Engineer, Core Services Team
Job Description
About The Team:
OneSignal has grown rapidly. Today we are serving billions of HTTP requests and sending over 12 billion messages daily. We achieved this scale by leveraging bare metal cloud and writing scale-sensitive components in languages like Rust and Go. 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 operations 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 written in Go and Rust and Kafka consumers written in Rust. You will work with Rust Go Ruby gRPC Redis Kafka Scylla and PostgreSQL
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 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 closely with fellow engineers to architect and implement services required to back OneSignalβs product offerings
-
Actively participate in peer code reviews and Technical Design Spec reviews providing valuable technical insights to continuously improve our code base
-
Work together with the team to efficiently resolve production issues and ensure the system scales smoothly to meet the growing demands of our customers.
-
Conduct data analysis and performance monitoring to identify areas for optimization and enhancement
-
Stay up-to-date with the latest industry trends and technologies incorporating new ideas into our engineering processes
-
Participate in production on-call rotation
-
Ability to work independently in uncertainty and drive multiple experiments to arrive at a solution to unblock business and customer operations
-
Debug production issues by utilizing metrics logs and distributed traces
-
Design synchronous and asynchronous APIs for communicating between services in a large distributed system
-
Design storage schemas for relational and non-relational databases
-
Improve performance of systems through benchmarking and profiling
What You'll Bring
-
At least 5 years experience working as a software engineer
-
Experience operating reliable production systems at scale
-
Easily bored running tasks by hand and the ability to automate such tasks
-
Experience with relational databases
-
Experience with distributed system event streaming framework such as Apache Kafka
-
Experience with Rust and/or Golang or a strong willingness to learn these two languages quickly
-
Ability to reason about how data flows through distributed systems
-
Experience with Docker and Kubernetes
We value a variety of experiences and these are not required. It would be an added bonus if you have experience in any of the following
-
Experience with any of Redis Kafka Scylla Apache Cassandra gRPC
-
Experience profiling applications to improve performance in terms of time/CPU/memory
-
Experience debugging issues in distributed systems
The New York and California base salary for this full time position is between $160000 to $180000. 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.
Date Posted
04/11/2024
Views
0
Similar Jobs
Software Engineer III | Platform - ExtraHop
Views in the last 30 days - 0
This job posting seeks a Software Engineer III to develop features lead junior team members and contribute to secure cloud and appliance solutions The...
View DetailsEngineering Manager - Software Supply Chain Security: Auth Infrastructure - GitLab
Views in the last 30 days - 0
This job description highlights a leadership role in developing secure scalable authentication infrastructure for GitLab It emphasizes technical exper...
View DetailsStaff Salesforce Engineer - CRM Systems - GitLab
Views in the last 30 days - 0
This job description outlines a Staff Salesforce Developer role focusing on designing building and scaling enterprisegrade solutions across Salesforce...
View DetailsTeam Lead - Publisher Success Management (AdTech) - MGID
Views in the last 30 days - 0
MGID is a fastgrowing digital advertising company seeking a resultsdriven Team Lead to oversee client relationships and drive business growth in the U...
View DetailsDevOps Engineer - Guidehouse
Views in the last 30 days - 0
This job posting seeks a skilled DevOps Engineer to support development QA and operations across applications emphasizing automation cloudnative infra...
View DetailsSoftware Solutions Architect - Unqork
Views in the last 30 days - 0
Unqork empowers enterprises with AIpowered applications emphasizing innovation security and growth The job posting highlights benefits like remote wor...
View Details