Our mission is to make it easier and cheaper for researchers, governments, and NGO's to perform statistically valid inference about the attitudes and behaviors of populations. We leverage digital tools to reach individuals, ask them questions, and involve them in experiments.
As an engineer with Virtual Lab, you will join a small team dedicated to making smart choices and building a robust, reliable, and scalable platform that leverages the latest technologies. The platform is open source, we use open source tools, and you will be encouraged to contribute to existing libraries and/or abstract logic into reusable tools where appropriate.
1. Be excited to work with a large set of services written in Go, Node.js, and Python.
2. Love evented systems, queues, immutability, idempotence, visibility, and reproducibility.
3. Be comfortable designing both transactional and analytics databases, as well as moving data in/out of them efficiently and reliably.
4. Love container orchestration. We currently use Kubernetes.
5. Love testing, including complex integration tests involving many containers and services.
6. Be ready to grow into a technical leadership role with architectural and design responsibilities.
2. Be able to work with a CDN and design systems to build and deploy assets for performant access on the worst networks in the world.
3. Be ready to build and improve api services written in Node.js, Python, and Go.
4. Be able to build and test services that integrate tightly with external APIs, such as those of the ad platforms.
5. Love unit, integration, and end-to-end testing and be excited about continuously improving coverage and automation to make the system more maintainable.