A bit about us:

The Senior Software Engineer - Data Services is responsible for development of new features as well as maintenance of existing data services for our consumer applications, web sites, and internal tools. This position works closely with the VP of Engineering, VP of Product Development and other senior decision makers as well as engineers and QA. The Senior Software Engineer will participate in steering the long-term technical direction of our tech stack architecture with the opportunity to grow with the organization.

Why join us?

● Understand long term business plans and design a future state enterprise data service architecture roadmap.
● Write clean, testable, scalable code in multiple languages both compiled and interpreted depending on the application needs
● Provide technical leadership and guidance throughout the data services software development lifecycle.
● Directly engage and collaborate with teams such as: Native Applications Development, Backend API Development, and DevOps to identify new technologies, architectures, solutions and processes
● Provide technical oversight throughout the entire scope of a project - ideation, development, testing, deployment, and monitoring process - to ensure solutions align with long-term architectural direction.
● Recommend changes in development, maintenance and system standards.
● Work with other technical team members to establish and maintain our build and release process.
● Demonstrate knowledge and proficiency in system design, object-oriented programming, data modeling, algorithms, cloud based micro-service oriented architecture, containerization, lambda functions, user permissions models, content delivery
● Take the lead to incorporate industry best practices for our developers and products.
● Other duties as appropriate - assigned from time to time.

Job Details

● Bachelor's Degree in Computer Science or equivalent work experience
● 5+ years of relevant experience in software development
● Exceptional Object-Oriented Programming fundamentals
● Exceptional Data Structures and Data Modeling fundamentals
● Exceptional Algorithms fundamentals
● Experience writing data services in a compiled language such as Java, Scala, Go, Kotlin, or Swift
● Experience writing data services in an interpreted language such as Ruby, Python, or PHP
● Experience with a relational database and strong SQL fundamentals
● Experience with search / discovery information retrieval systems such as elastic search or solr
● Experience with event driven programming - Kafka, Kinesis
● Experience in designing robust, scalable, resilient, cloud-based solutions
● Understanding of Agile, Scrum, or Kanban methodology and process
● Experience with fintech or adtech a plus
● Experience in moving application architectures from startup to mature.
● Bias towards action over discussion.
● Strong analytical, critical thinking, and problem solving skills.
● Experience in both process and solution analysis & design.
● Comfortable communicating in both written and oral forms to various types of audiences (developers to managers to business owners).
● Able to work independently in a dynamic project environment with aggressive deadlines.
● Experience working with geographically dispersed teams.