Junior full-stack developer

We are now looking for a junior full-stack developer to join the team!


weseethrough is a tech-driven market research startup. We’re less than two years old, and we’ve already won large contracts from big-name clients like Unilever and we won the 2015 MRS award for innovation in research methodology. Business is booming.

We help our clients understand their consumers’ real behaviour: how they use their products, how they interact with advertising, how they perceive brands. Traditionally this has been done through surveys and focus groups, or sending researchers to participants’ homes as they use cleaning or food products etc. These approaches have major drawbacks:

  1. Reported behaviour and actual behaviour can be very different. People might claim they only add one teaspoonful of salt, but they actually add three… or they think they take 20 minutes to clean a room, but actually take 40.
  2. Sending a researcher to observe someone in their homes as they use a product is expensive, and it’s hard to get participants to relax and act naturally when there’s a stranger watching them!

We address these issues by giving participants wearable devices like Google Glass or GoPro to wear as they perform activities like cooking or cleaning. We use these devices to record hundreds of hours of first-person video. We then use our Haystack platform to find the 0.1% of the footage that’s insightful: the moments which help our clients better understand their customers.

We’ve conducted these studies in >20 countries across five continents; from Tokyo to Lagos to Moscow to Milan. To give an example, we had a client in Brazil who wanted to understand why their recently-launched house cleaning products were not selling well. To investigate, we got participants to clean their homes with Google Glass. As well as recording video and audio, our custom Glass software posed pre-recorded Portuguese interview questions as they went around their homes, using proximity beacons in each room to ask the right questions at the right time. We were able to use the recordings to write a report for a client giving deep insights into common behaviours, and a few quirks you wouldn’t think to ask about, like participants throwing buckets of undiluted bleach over their floors without moving furniture out of the way!

A more detailed example in this case study.


Our platform is all about how to mine video from market research studies for interesting, insightful content. Other platforms focus on interview videos, where someone describes their experiences with a product or service – as such, such platforms focus on transcribing the video.

Rather than reported behaviour from interviews, we focus on consumers’ actual behaviour using GoPros on chest- or headstraps, Google Glass, movement sensors, eye tracking glasses, and other biometric sensors. Like our competitors, we subtitle videos, but that’s not enough to understand participants’ behaviour. So our platform allows us to mark things that *happen* in the videos, like a stock cube being chopped in half or two cleaning products being mixed together, and things like the products that are seen on screen.

Much of our video analysis is done by the crowd at present – a key technical challenge for us is how to best leverage recent leaps and bounds in machine vision to automate video tagging.


The role is twofold:

1. Devops.

Our platform is split between:

  • A pair of dedicated Linux servers (prod + test), running node.js, a lot of batch video processing with ffmpeg, and a bit of data in Redis
  • Also, often when we receive a lot of videos from a client for processing, the project managers need a helping hand organising it.

2. Full-stack dev and fix.

  • We’re looking to incrementally rewrite our platform, which currently uses Angular 1.3 and node.js. We have a variety of user types (end clients, researchers, crowd video taggers and transcribers, project managers, video uploaders…) that we want to migrate to a new platform we’re starting to build with ReactJS, one user type at a time. We’re going to have a relatively protracted transition period where both run in parallel, so part of the role will be about patching up the old, part of it will be about creating the new.


We’re a small startup, and it’s crucial that you’re comfortable with all that that means!

  • You’ll have a lot of responsibility early on, and if you do a good job you’ll see a real difference to how the company is doing.
  • We’re likely to ask you to go outside your comfort zone and perform tasks outside a narrow reading of your job specification.
  • Lateral thinking and problem solving for unfamiliar tasks are hugely valued here.
  • There’s no room for big egos here! In large companies, it’s possible for an individual to do well as the company flounders – here, we all make a success of the company, or… we don’t.
  • We want someone who is hungry to work in a startup in general, and our company in particular. Startups have a very different culture from large corporates and you should have a clear idea of this going in, even if you’ve not worked for a startup before.


  • Linux system administration (we use Ubuntu)
  • HTML & CSS
  • Angular 1.x or React or both
  • ES5
  • Deep understanding of Chrome developer tools

NICE TO HAVE (can learn on the job)

  • ES2015 / ES6+
  • node.js
  • AWS – currently we use S3, CloudFront, EC2; may start using Elastic Transcoder and others in future
  • Build automation tooling (we’re using Bamboo)
  • git
  • Redis
  • ffmpeg / video processing
  • JIRA
  • Performance test experience