Back End Software Engineer (Database)
TVision is the leader in TV performance metrics. We enable the media industry - brands, networks, and data partners alike - to reduce waste and drive greater marketing results.
We use cutting edge technology to measure what was once unmeasurable - how people really watch TV. Our core technology measures 'eyes on screen' attention, the single most accurate way to measure exposure to video content. Our solution offers critical insight into brands and agencies targeting audiences. We do this by providing a mission-critical dashboard and attention currency to our customers - some of the most well-known brands and networks globally.
Our growth and innovation have been recognized by The New York Times, Advertising Age, AdWeek, MediaPost, and Forbes.
Reliable ingestion of data from our panelists’ in-home devices is the foundation of TVision’s products. As a member of the back end development team, you will be responsible for designing and implementing solutions that analyze large data streams and deliver the results to our our analytics platform. On any given day you might be building product components for transforming and reducing raw data at scale, performing statistical analysis to develop appropriate data reductions, or recommending improvements to our ingestion pipeline and database design.
Because we believe strongly in the benefits of statically typed functional programming, we build our back end services primarily in Haskell. But because we also believe in working together with domain experts, we have a good deal of active Python code as well, in our ops automation and in the data analyses we co-develop with our data science team. We expect our back end team to be comfortable working in both of these languages, and with the relational databases in which all our data is ultimately delivered.
As a member of the back end development team, you will design and build:
- The services that monitor our panelist devices, retrieve data from them, and keep them running and healthy
- Algorithms that analyze multiple data points per second from thousands of devices
- The compute infrastructure that runs those algorithms to get accurate, timely, reliable data to our analysts and customers
- The ETL automation that delivers this data to our customer-facing platforms
- The operational automation and monitoring that lets our team deliver all of that and go home on time!
You are familiarity with relational databases and data analysis tools such as Spark. The specific requirements are as follows:
- 1 - 5 years of industry experience
- BS/MS in Computer Science or closely related discipline (math, computer engineering).
- Substantial experience with at least one relational database (we use Postgres), including performance analysis and optimization. If you are also familiar with columnar databases (Redshift, Vertica, etc) even better.
- Experience with data analysis frameworks of the MapReduce type, such as Hadoop and Spark.
- Working familiarity with Python.
- Knowledge, demonstrated by experience and/or publicly available code, of at least one statically typed functional programming language, such as Haskell, Scala, or OCaml.
- Strong communications skills with both technical and non-technical team members.
- Collaborative and enthusiastic approach to software development.
- Strong sense of project ownership and personal responsibility.
TVision prides itself in providing great benefits to its employees, including:
- Competitive pay and stock options
- Your choice of comprehensive health benefits for you and your family (health, dental, vision)
- Short and long-term disability, Life and AD&D insurance
- FSA/HSA accounts
- 401(k) retirement plan options
- Pre-tax commuter benefits
- Monthly phone reimbursement
- Unlimited PTO and paid holidays
- Gym membership discounts
- Financial support for ongoing professional development
- Casual dress and fun office atmosphere
- Monthly catered lunches
- Drinks and snacks stocked weekly
- Office locations in the heart of Boston (Faneuil Hall) and New York (Grand Central Terminal)