: Sr. Principal Software Engineer (Data Engineering)
Teikametrics is a leading maker of e-commerce AI. We help independent brands (both large and small) optimize their advertising, forecast demand, detect product issues and maximize overall profitability. While still at startup size (<150 employees), the company has over $15 M in annual-recurring-revenues and has recently raised a Series A investment to fuel growth. Teikametrics is on target for over 100% revenue growth for its second year in a row.  

Over 50% of all e-commerce sales are by independent, third-party sellers. The majority of these sellers are largely flying blind with nothing but basic spreadsheet software with which to manage their business. Our AI helps these sellers by providing deep performance analytics at a product level, as well as support for complex decision-making through a combination of econometrics and machine-learning.
 
Teikametrics offers competitive compensation and our benefits include a matching 401(k) plan, quarterly bonuses, unlimited vacation, and stock options. Our culture emphasizes a sustainable work-life-balance and creativity rather than long-hours, and our team is organized to provide a high level of support and 1:1 mentorship for developers at every level. 
 
About the Role
 
Teikametrics is looking for a Sr. Principal Software Engineer to shape and define the technologies and approach for our data ingest and processing pathways. 
Current back-end technologies at Teikametrics emphasize a ‘functional-first’ Scala stack with cat and fs2, powering a front-end that uses TypeScript with React and Redux. We also use Python and Postgresql. 

Qualified candidates should have:
  • 10+ years of experience working as a professional software developer. Comfort with building data ingest and processing for a SaaS system at a Terabtye or greater scale.
  • Proficiency in Scala, Java, Haskell, or related languages
  • Knowledge of databases and experience with writing code that interfaces with the database layer. SQL/RDBMS and NoSQL (one of Snowflake, Cassandra, Elastic Search, Redshift, etc.) experience required
  • Experience with stream-based data-processing at scale (Spark, Flink, Dataflow, EMR, etc.)
  • Experience writing well designed and testable code, and writing effective unit and integration tests.
  • Experience working in a mature production environment (Deployment, CI, Monitoring/Alerting)
  • Proven ability to mentor developers and provide technology leadership for teams of 5-10 developers
  • A desire to work in a collaborative environment focusing on continuous learning; participating in tech talks, code review, and some pair programming.
Full-time