Our main mission is to give every team (data, marketing, product…) the ability to measure how their actions affect the user experience across websites, mobile and app.
At Contentsquare, our R&D department is divided into six teams (Data Collection, Data Engineering, Application, Platform, QA & Program).
The primary objective of three of these teams is to directly process the data:
Data collection: The main role of the Data Collection team is to collect raw data from a website in an innovative way without impacting the performance of our customers (which include the largest digital companies in France, US, and UK).This team faces the permanent technical challenge of constantly improving our technology to make it more innovative and more efficient.
Data Engineering: The Data Engineering team is in charge of cleaning the data, gathering the most relevant data and anonymizing personal information.
Application: This team provides a visualization of the data for our customers. They insert the data thanks to 3D visualization.
In addition to the three teams detailed above, we have three transversal teams:
Platform: The platform engineer is an IT generalist who must have a broad knowledge of development and operations, including coding, infrastructure management, systems administration, and DevOps tool chains. They will introduce a set of processes, tools and automate as much as possible to ensure that each iteration goes as smoothly as possible.
QA : The QA team is a multi-functional team comprising of Software Engineer Testers who work across the techno-functional perimeter. The main responsibility of a SET is to make sure the Automatic Test is stretched to the fullest, often beyond its supposed limits to ensure cohesion, stability and the rate of production. To make sure this process is scalable and reproducible, the SETs are a lot more than just testers.
Program: The program team is responsible for several development features and delivery, as part of the whole SaaS solution. They run features production as scrum master and project manager. They lead projects across different technical teams, each one with its specific field of expertise.
Technologies and tools
SDK : Our mobile team implements
SDKs. These SDKs are used by our customers. Our clients will pick different features from our library and place it on their application. The mobile teams are very strict about the clean code because we can not afford to have bugs as it could be a deal breaker. Our SDKs have to maintain a balance by: recover a maximum of data, while not hindering the performance of clients and taking into account hardware constraints such as reams, memory, processors .... We are using a lot of proof of concept to find the answers to the identified problems.
Puppeteer is a Node.js library which provides a high-level API to control Chrome or Chromium with the DevTools Protocol. We based our solution on Puppeteer because it produced perfect results on different edge cases from our client sites. To render a client site, we use a static web application that is capable of creating zones on the page and overlaying metrics on the page elements.
We have switched to Webpack and have explicitly declared all dependencies in our AngularJs components, we don’t concatenate js files anymore. This has highlighted many bad dependencies, poorly isolated components and therefore offers us the opportunity to re-write properly the code in Angular.
Organization and methodologies
At Contentsquare we are using the agile methodology (sprint, scrum master…)
Thanks to this methodology, we are organized within 13 squads. The squads are composed of 1 Project Manager, 1 Technical Project Manager, 1 Technical Expert, 1 Team Leader and approximately 4 or 5 developers. Depending on the squad, it could be more oriented back end or front end.
Projects and tech challenges
Micro front end
At Contentsquare, with half a million lines of code in our AngularJS/Angular hybrid application, over 40 frontend developers and big technical and product challenges to overcome, the migration to a micro-frontend architecture was a necessity.
We consequently conducted several workshops before defining our target and ideal vision. Our main concerns were performance, scalability and interactions between modules.
As we wanted to control the migration of one module after another and the performance at the same time, two pitfalls had to be addressed: The impact on the build process locally and in the continuous integration tool. Dependency and version management.
Migration from one module to another should be simple. Once you have the mechanism for the first one, you can replicate it for the others; and every improvement made to one will benefit all. So using a new single repository for all our micro-frontends was our first choice. It helped to control the two pitfalls.
Secondly, the integration of a micro-frontend into the legacy shell container had to be as simple as possible. Our second key choice was to rely on Web Components. It allows you to create custom elements in the DOM, to isolate the CSS in the shadow DOM and, by development, load it lazily.
Contentsquare is not the first company to rely on the Web Components strategy to implement micro-frontends. While the migration plan seems simple, implementing it is a long race, a bit like a marathon, because you want to keep releasing features while migrating. So perfect alignment between the product team and our R&D is an ongoing effort.
For more information: Engineering blog
Stage 1: Recruiter Phone Interview
Stage 2: Hiring Manager/Stakeholder Interview
Stage 3: Team/Stakeholder Interview
Stage 4: Assignment & Presentation
Stage 5: Interview with Departmental Leader
Please Note: Some steps are subject to change based on the position. Certain positions are not required to complete an assignment or case study
Latest job listings
No openings for now, please check back in a few days!
Contentsquare is a digital experience analytics company dedicated to making the digital world more human through online experiences built on trust, privacy, and accessibility. Since their founding in France in 2012, they have grown to be a truly global team, representing more than 70 nationalities in offices across the world, including New York, London, Paris, Munich, San Francisco, Barcelona, Amsterdam, Tel Aviv, Tokyo, Singapore, and more.
As they’ve grown and evolved, their customers, investors, and the media have taken notice. They have been recognized by Frost & Sullivan as a Global Company of the Year, and by Wired Magazine as one of Europe’s hottest startups. In July of 2022, they raised $600M in Series F funding, doubling their valuation to $5.6B.
Contentsquare is made up of authentic innovators, spirited collaborators and creative problem solvers who are passionate about making a lasting impact on a rapidly growing company. They hire talented people and give them trust, support and flexibility to get the job done.
No matter their backgrounds, interests or appearance, their unique perspectives come together to inspire a culture where decisions are made based on ideas, not org charts. Their global vision is driven by a human-first approach to everything they do.
Uniqueness is embedded in their DNA as one of their core values, and they welcome everyone to apply to their positions. Fluency in English is required.
Contentsquare has a track record of success over the past 10 years, yet they operate with the agility of a startup, providing a huge opportunity to make an immediate and lasting impact. Their clients, partners and investors love their industry-leading analytics platform.
They invest in their people through career development, mentorship programs, social events, philanthropic activities, and competitive benefits. Generous paid time off plans, as well as schedule flexibility with in-office and remote hybrid work options make sure employees are at their best, inside and outside of work.
They nurture an honest, inclusive culture with Employee Resource Groups (ERGs) focused on Abilities, LGBTQ+ and Allies, Multicultural, and Women in Tech that give employees a safe space to build community, share common interests, and tackle challenges together.