Senior Software Engineer
About the job
At Surfside we are building a consumer and audience intelligence platform that helps brands, retailers and publishers alike grow their business through insights, measurement, media activation that ultimately leads to more sales.
Our platform allows clients to understand who their current and future customers are in greater clarity - providing accurate breakouts of traffic behaviors, demographics and harnessing advanced data such as interests, shopping habits and in-depth brand preferences. From here, our clients are able to identify key attributes and create personas or sub-segments that can be used across search, social and programmatic marketing platforms to build tailored consumer experiences.
We are looking for talented engineers to join our Engineering orginization who are passionate about building large-scale data processing systems. We are looking for engineers who are able to wrap their heads around complex challenges and come up with elegant solutions. You will be expected to apply your strong engineering and problem solving skills to priorities and execute on projects. Our ideal candidate has experience in both software engineering and streaming data systems.
The mission of this role is to deliver a reliable and resilient foundational Data Platform for services at Surfside.
Outcomes & Responsibilities
- Ensuring monitoring, performance, reliability and quality of our Data platform services are running seamlessly
- Help design, build and run platforms that support real time workloads and streaming data flows in a micro-service environment with ever growing traffic utilizing automation.
- Drive productivity improvements through automation, optimization and process enhancements.
- Provide guidance to other teams in data modeling / stream processing
- Foster a collaborative environment and be a good role model within the team
Capabilities & Requirements
- We expect you to have a strong understanding of software engineering principles and strong skills with Scala, Node or similar languages
- A strong understanding of Systems Engineering with proven experience and background in Data Engineering and/or software development.
- You have a technical background in Big Data technologies like: Apache Kafka and/or Apache Presto, Spark, Flink, Beam, Hive, HDFS, YARN, Hadoop
- Familiarly with data warehousing technologies like AWS Redshift, Clickhouse
- Proficient in at least one of the SQL languages (MySQL, PostgreSQL, SqlServer, Oracle)
- Good understanding of SQL Engine and able to conduct advanced performance tuning
- Experience working with Apache Cassandra preferred
- Experience working with AWS and Kubernetes in production preferred
- Experience with different types of data file formats such as Parquet, Protobuf
- Keen to always push the boundaries and think outside of the box
- Excellent communication skills
- Be motivated, self driven and pragmatic in a fast (we truly mean fast) paced environment with strong sense of ownership and craftsmanship
- BS degree in Computer Science, similar technical field of study or equivalent practical experience.