{
    "componentChunkName": "component---src-components-pages-basic-page-js",
    "path": "/six-under-appreciated-principles-of-data-warehousing-through-the-eyes-of-a-data-scientist/",
    "result": {"data":{"contentfulBasicPage":{"id":"9eb4afc6-3605-5f70-99ce-2afdd8443408","publishingMetadata":{"sys":{"type":"Entry","revision":2,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"publishingMetadata"}}},"id":"42f098ec-0dbb-5578-9efa-979eb362dc6e","deIndexPage":false,"includeClarity":true,"includeOptimizely":true,"pageTitle":"Six Under-Appreciated Principles of Data Warehousing, Through the Eyes of a Data Scientist Meta","pageDescription":"Explores the challenges that can emerge between data science research and production and practical strategies for building more reliable, scalable machine learning pipelines.","pageThumbnail":null,"slug":"/six-under-appreciated-principles-of-data-warehousing-through-the-eyes-of-a-data-scientist","analyticsTag":null},"ctaText":null,"ctaLink":null,"disableStickyFooter":true,"disableCtaButton":true,"blocks":[{"sys":{"type":"Entry","revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"hero"}}},"id":"5af88f29-bbba-5a12-950e-8184dad706a2","anchor":null,"eyebrow":null,"headline":"Quantitative Science Blog","headingLevel":"h1","subhead":"","body":{"json":{"data":{},"content":[{"data":{},"content":[{"data":{},"marks":[],"value":"An exploration of the data science and actuarial innovations, technical and non-technical, that fuel Root’s mission to unbreak the insurance industry","nodeType":"text"}],"nodeType":"paragraph"}],"nodeType":"document"}},"textAlignment":null,"backgroundColor":null,"imageLocation":"Top Image","imageOverlay":null,"imageAltText":"Root Insurance Quantitative Science Blog","verticalImageAlignment":"Center","hideHeroImageOnMobile":null,"callToActionButtons":[],"subCopy":"","subCopyIcon":null,"asset":{"gatsbyImageData":{"images":{"sources":[{"srcSet":"//images.ctfassets.net/pacigpl3aj13/23PBCeCF6GU3nyS2Flipnu/3ed9068391223bef8e7f86abc0b12aef/Root_Hero_Desktop-Full.png?w=750&h=339&q=95&fm=webp 750w,\n//images.ctfassets.net/pacigpl3aj13/23PBCeCF6GU3nyS2Flipnu/3ed9068391223bef8e7f86abc0b12aef/Root_Hero_Desktop-Full.png?w=1080&h=488&q=95&fm=webp 1080w,\n//images.ctfassets.net/pacigpl3aj13/23PBCeCF6GU3nyS2Flipnu/3ed9068391223bef8e7f86abc0b12aef/Root_Hero_Desktop-Full.png?w=1366&h=617&q=95&fm=webp 1366w,\n//images.ctfassets.net/pacigpl3aj13/23PBCeCF6GU3nyS2Flipnu/3ed9068391223bef8e7f86abc0b12aef/Root_Hero_Desktop-Full.png?w=1920&h=867&q=95&fm=webp 1920w","sizes":"100vw","type":"image/webp"}],"fallback":{"src":"//images.ctfassets.net/pacigpl3aj13/23PBCeCF6GU3nyS2Flipnu/3ed9068391223bef8e7f86abc0b12aef/Root_Hero_Desktop-Full.png?w=750&h=339&q=95&fm=png","srcSet":"//images.ctfassets.net/pacigpl3aj13/23PBCeCF6GU3nyS2Flipnu/3ed9068391223bef8e7f86abc0b12aef/Root_Hero_Desktop-Full.png?w=750&h=339&q=95&fm=png 750w,\n//images.ctfassets.net/pacigpl3aj13/23PBCeCF6GU3nyS2Flipnu/3ed9068391223bef8e7f86abc0b12aef/Root_Hero_Desktop-Full.png?w=1080&h=488&q=95&fm=png 1080w,\n//images.ctfassets.net/pacigpl3aj13/23PBCeCF6GU3nyS2Flipnu/3ed9068391223bef8e7f86abc0b12aef/Root_Hero_Desktop-Full.png?w=1366&h=617&q=95&fm=png 1366w,\n//images.ctfassets.net/pacigpl3aj13/23PBCeCF6GU3nyS2Flipnu/3ed9068391223bef8e7f86abc0b12aef/Root_Hero_Desktop-Full.png?w=1920&h=867&q=95&fm=png 1920w","sizes":"100vw"}},"layout":"fullWidth","width":1,"height":0.45138888888888884,"placeholder":{"fallback":"data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAJCAMAAAAFH/x6AAABtlBMVEUfHyMgICMgICQhISUkJCcoKCstLTA0NDdGRkl3dniVk5OCfXybkpCLf3t6aWKBaWBzV0xtSz5oRDZhOy0eHiEeHiIiIiYmJikrKy4vLzI2NThUUlRkYWFrZGKPg3+LeXKEaF6GYFKDWEeRX0yWYEuNVT8dHSElJSgpKSwdHSAUExY3NTZIQ0JdUk+Bb2mVeW+bcWGeZ1KVWkSoaVCeWkGSSjEkJCgqKi0qKSwrKiwkISIsJiVIOzh5Y1uQbF+eZ1OqZUqlWjyYQyGKLACQLgEnJyo3NjlAPkE+Ojs0LCpJNS5iRDl3RDKKQiebRSOlRyOwSB+xQhe5RRcsKy09Oz1DPT5ANjNfRTx2Tj+TVT6pVji8WTTDVizJUCHMTBrPShYcHCAbGx8aGh4YGBsmJCcrKSomICAqHRlHJBdgKheBNx6gRCO5TCTKUCLaVCDgUxzjURccHCEbGx4ZGRwXFxocGx4aFxgbExMmFRBSIA5rJwyFLgufNQu2PQzJQw7bShDmThLsUBMZGR0YGBwXFxkWFRcZFRYdFRMtFxFjJA59LA6TMw6rOw7AQQ/USBHkThLuURPzUhPgI2DBAAAARklEQVQI12NkYMQELCIMjG+F0QWFGN79e6uCJsjAwMjAwI8hyMAozH/QAU1Q8P+r/cK8aIJWGA5g8X7PwCiILggSE0ATBABTwgtuTk00PwAAAABJRU5ErkJggg=="}}},"mobileImage":{"gatsbyImageData":{"images":{"sources":[{"srcSet":"//images.ctfassets.net/pacigpl3aj13/5DHtKFOpoMP0SLrZqZ1l85/3a413b0b6ec05bc53f6362e8458677fd/Root_Hero_Mobile-Full.png?w=563&h=978&q=50&fm=webp 563w","sizes":"100vw","type":"image/webp"}],"fallback":{"src":"//images.ctfassets.net/pacigpl3aj13/5DHtKFOpoMP0SLrZqZ1l85/3a413b0b6ec05bc53f6362e8458677fd/Root_Hero_Mobile-Full.png?w=563&h=978&q=50&fm=png","srcSet":"//images.ctfassets.net/pacigpl3aj13/5DHtKFOpoMP0SLrZqZ1l85/3a413b0b6ec05bc53f6362e8458677fd/Root_Hero_Mobile-Full.png?w=563&h=978&q=50&fm=png 563w","sizes":"100vw"}},"layout":"fullWidth","width":1,"height":1.7371225577264655,"placeholder":{"fallback":"data:image/jpeg;base64,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"}}},"eyebrowImage":null,"form":null},{"sys":{"type":"Entry","revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"sectionSpacer"}}},"id":"320ddc1f-1647-5436-9364-df507e80afe8","size":"No space"},{"sys":{"type":"Entry","revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"richTextSection"}}},"id":"4216d186-7ab4-5550-9dad-d86fd82761b7","anchor":null,"content":{"json":{"nodeType":"document","data":{},"content":[{"nodeType":"embedded-asset-block","data":{"target":{"sys":{"id":"7oEel8hy49mylJ24qMy8IO","type":"Link","linkType":"Asset"}}},"content":[]},{"nodeType":"heading-6","data":{},"content":[{"nodeType":"text","value":"December 15, 2021","marks":[],"data":{}}]},{"nodeType":"heading-2","data":{},"content":[{"nodeType":"text","value":"Six Under-Appreciated Principles of Data Warehousing, Through the Eyes of a Data Scientist","marks":[{"type":"bold"}],"data":{}}]},{"nodeType":"heading-6","data":{},"content":[{"nodeType":"text","value":"Written by Kyle Schmitt","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"A sound strategy for your data warehouse can be the difference between a world-class data science organization and a large allocation on your balance sheet that’s dedicated to treading water.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Having worked in data science across three very different organizations, I’ve experienced the good, the bad, and the ugly of data warehousing. From these experiences, I have compiled an assorted set of “principles” that, from my standpoint, can go under-appreciated. In this post, I articulate these principles in the hope that it helps other data scientists, data engineers, software engineers, designers, and product owners hone their own mental models.","marks":[],"data":{}}]},{"nodeType":"heading-5","data":{},"content":[{"nodeType":"text","value":"Lingo","marks":[{"type":"bold"}],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Let’s start by establishing some nomenclature:","marks":[],"data":{}}]},{"nodeType":"blockquote","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"System:","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":" a real-world system of interest, e.g., at an insurance company — a policy, claim, or driver","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Data model: ","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"an abstract model that organizes elements of data and standardizes how they relate to one another and to the properties of the system","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"State: ","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"the value of a set of properties within a data model at a given point in time","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Predictor variable: ","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"one of potentially many properties of a state that can be used to predict other properties of the state or a future state","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Target variable: ","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"one of potentially many properties of a state or a future state that we might aim to quantify with predictor variables","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Label: ","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"a value assigned to a target variable to quantify a known or presumed outcome","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Prediction: ","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"an estimate of the target variable made based on a given state; as discussed below, in principled data models, predictions might be part of the state","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Data science model: ","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"a model that accepts predictor variables and returns predictions (“Data science” is redundant, but it is used to disambiguate “model” throughout this blog.)","marks":[],"data":{}}]}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Principles","marks":[{"type":"bold"}],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"In this section, I’ll introduce six principles of data warehousing as seen through the eyes of a data scientist.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Principle #1: Explicitly delineate between null and default labels","marks":[{"type":"bold"}],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"One common mistake in data modeling is a failure to delineate between labels that were never generated and default labels. Without this delineation, a data scientist may unwittingly assign an outcome to a target variable incorrectly, or, they may need to resort to semi-supervised learning to reconcile ambiguous labels. Or, they might not be able to rely on the label at all, squandering a ML opportunity.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Imagine your design team implements a modal to collect reason codes for users who ask to suspend their accounts. If the modal defaults to some common category, say “I no longer have a use for the app.,” a careless data strategy might conflate this default with users who choose not to interact with the modal.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Or, imagine your team has implemented a new algorithm to flag suspicious behavior associated with a transaction. Going forward, each transaction will be labeled true or false. But, prior to launch, each transaction was unlabeled. A careless data strategy might not allow for precise delineation between null and false around the time of launch.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"These examples illustrate just a few cases that violate this principle.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Principle #2: Persist information about the evolution in state mutation\n","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"Many systems of interest have an evolving state over time. Aptly considering this evolving state is core to the development of effective ML systems. In order to do this, we need to develop data models that support the reconstruction of the state at any point in time.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Field mutability is toxic to state reconstruction. When fields are mutated in place, we lose any record of how that field might have varied in time, and we are left only with the latest snapshot of the data model. Field mutability should only be used with careful consideration of the effects it might have on future analytics and data science.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Instead, one of two alternative approaches is often used:","marks":[],"data":{}}]},{"nodeType":"unordered-list","data":{},"content":[{"nodeType":"list-item","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Accumulating records provide a snapshot of the state at a time cadence that is consistent with the dynamics of the system. This approach is often more convenient for downstream consumers, but may not be effective or practical for systems that a) experience frequent state changes (e.g., by the minute) or b) experience state changes at variable time scales (e.g., no changes for months followed by many changes within hours).","marks":[],"data":{}}]}]},{"nodeType":"list-item","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Transactional records capture any changes to the state with an associated time stamp. From this information, a complete and perfect reconstruction of the evolving state can be achieved. In fact, accumulating records are often built from transactional records.","marks":[],"data":{}}]}]}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Principle #3: Design your systems to allow for on-leveling\n","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"In insurance sciences, the phrase “on-leveling” refers to the application of a new pricing model to historical underwriting decisions. The resulting data allows us to ask counterfactual questions like “What if we had priced users with the latest pricing model?” This is an essential process for benchmarking new data science models.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"This same concept can be generalized to virtually any application area. There are often diagnostic and modeling advantages to having predictions prepared based on the latest data science model.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"At the highest standard, engineering and data science work together to integrate predictions into the state of the data model ","marks":[],"data":{}},{"nodeType":"text","value":"and","marks":[{"type":"italic"}],"data":{}},{"nodeType":"text","value":" backfill this state over the history of data (without overwriting predictions of earlier data science models). Retrofitting backfilling processes can be painful or impractical. We recommend building this into your system from day one.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"However, even if the prediction is not integrated into the data model, the data model can still be built in a way that ","marks":[],"data":{}},{"nodeType":"text","value":"allows for","marks":[{"type":"italic"}],"data":{}},{"nodeType":"text","value":" prediction backfills, i.e., the data model should store values for all predictors required for the data science model. This requires that these predictor variables are not removed or overwritten. This might necessitate certain storage and computational costs to generate fields that are not used anywhere outside of the data science process.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Deprecation of predictor variables may be necessary (e.g., computational costs, vendor costs), but should be a deliberate process that includes analytics stakeholders in the discussion. To aid in this process, we should strive for data science models that effectively self-document their data lineage.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Principle #4: Prototype assuming system longevity\n","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"To support proof-of-concept initiatives or A/B experimentation, it may be tempting to begin with a substandard data model and then transition to a more virtuous data model over time. After all, there can be significant overhead in designing a completely future-proof system (which, of course, does not actually exist).","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"In circumstances when the more virtuous data model can be backfilled after transitioning to full scale, this is highly recommended. Asking all future analysts to know how to span two or more data models for the same system is a recipe for confusion at best and disaster at worst.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"In other circumstances, shortcuts taken on the substandard data model might preclude the more virtuous data model from being backfilled. While this risk cannot be mitigated entirely (Because, hey, we learn a lot in the early stages of deployment.), the use of cross-functional design in the early phases of a product or concept is recommended. By bringing analysts and data scientists into those discussions, we might grow our understanding of downstream consumers and identify data elements that are critical to collect and persist for diagnostics, machine learning, etc.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Principle #5: Tamp down unsanctioned data storage\n","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"Without the right technologies and left to their own devices, many technical and non-technical domain experts will resort to using their own decentralized mechanisms for compiling data (most commonly, spreadsheets). While better than nothing at all, these mechanisms have a tendency to breed poor quality, missing records, inconsistent schemas, unstructured fields, etc. They are also time-consuming. Finally, they are inconvenient to work with, especially when one wants to join them with other records.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"We should make every effort to weed these out, perhaps using occasional campaigns to hunt down their existence. We should build data entry technologies that promote input efficiency and data structure. These technologies should be connected with a backend that is centralized for consumers through the data warehouse.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Failing that, we should have protocol to ensure that spreadsheets are snapshotted to our data warehouse at some reliable cadence.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Principle #6: Avoid sequencing requirements for predictions and labels\n","marks":[{"type":"bold"}],"data":{}},{"nodeType":"text","value":"It’s not uncommon for the mechanisms that generate predictions or labels to be queued by business logic. This may be done deliberately to manage costs. But, it is often done circumstantially without an appreciation for its ramifications.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"For instance, in insurance underwriting, we might apply a sequence of rules to determine whether a driver or vehicle should be declined. As a slightly contrived example:","marks":[],"data":{}}]},{"nodeType":"ordered-list","data":{},"content":[{"nodeType":"list-item","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"If rule A is satisfied, stop and decline.","marks":[],"data":{}}]}]},{"nodeType":"list-item","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"If not, pay for a report. Based on the report, if rule B is satisfied, stop and decline.","marks":[],"data":{}}]}]},{"nodeType":"list-item","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"If not, run model A. If the model A prediction exceeds a threshold, stop and decline.","marks":[],"data":{}}]}]},{"nodeType":"list-item","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"If not, run model B. If the model B prediction exceeds a threshold, request a review by a human underwriter.","marks":[],"data":{}}]}]},{"nodeType":"list-item","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"If not, accept.","marks":[],"data":{}}]}]}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"In this example, generating a prediction with model A is serialized behind rule A and rule B. Serializing rule B behind rule A is a shrewd maneuver, as we circumvent report costs. But, what if the computational cost of model A is trivial? We have forgone an opportunity to generate a prediction that might be used for diagnostics or future model building (see principle #3).","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Also, you’ll notice that review by a human underwriter is only actuated under a narrow set of circumstances. There could be significant data science upside in attaining manual reviews for a more diverse set of cases. Savvy designs will randomly (or selectively via active learning principles) assign cases for manual review, even if in parallel with an automating decision engine.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"This example illustrates that there is much to gain by being thoughtful about the sequencing of prediction and label generation.","marks":[],"data":{}}]},{"nodeType":"heading-5","data":{},"content":[{"nodeType":"text","value":"That’s a wrap","marks":[{"type":"bold"}],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"When faced with a big and nebulous challenge, developing a taxonomy is often a productive first step. I hope that the six principles described above help you and your organization realize the full potential of data science.","marks":[],"data":{}}]},{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"If you’d like to learn more about Root Insurance, visit joinroot.com or contact me on ","marks":[],"data":{}},{"nodeType":"hyperlink","data":{"uri":"https://www.linkedin.com/in/kyle-schmitt-555354a3/"},"content":[{"nodeType":"text","value":"LinkedIn","marks":[],"data":{}}]},{"nodeType":"text","value":".","marks":[],"data":{}}]}]}},"textAlignment":"Left","backgroundColor":"White"},{"sys":{"type":"Entry","revision":15,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"sectionSpacer"}}},"id":"a8cf6247-2c25-5a0c-92b2-8e2b8403d8a4","size":"S"},{"sys":{"type":"Entry","revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"iconToutSection"}}},"id":"c673a765-98e7-57c4-9f37-f6e9d9f07327","anchor":null,"eyebrow":null,"headline":null,"subheadRich":null,"iconSize":"Large","backgroundColor":"White #FFFFFF","contentfulchildren":[{"id":"5bb62ccf-a607-52ab-b25e-e253e28b4a7b","eyebrow":null,"headline":"Want to work with us?","body":{"json":{"nodeType":"document","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Join our team of data scientists, actuaries, machine learning engineers, and analysts.","marks":[],"data":{}}]}]}},"asset":{"title":"Root App Badge - [Make]","file":{"url":"//images.ctfassets.net/pacigpl3aj13/6P5qfFeQ6lHMbxBgkstGNd/a077b1e3238f23061cd719073faeb5b5/RootBadge.svg"}},"iconAltText":null,"callToActionButton":{"id":"0f87a3a0-ec2e-56ac-ae83-868aefe080b3","buttonType":"Primary","buttonText":"Explore Careers","buttonLink":"https://inc.joinroot.com/careers/","forwardQueryParams":null,"gTagEventName":null,"modal":null},"form":null}]},{"sys":{"type":"Entry","revision":15,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"sectionSpacer"}}},"id":"d5b10942-1e6d-5af0-9ffa-475488ee106b","size":"M"},{"sys":{"type":"Entry","revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"imageToutSection"}}},"id":"f46e9e9f-664e-5c09-935f-09395c855b72","anchor":null,"cardStyle":null,"toutColumns":"4","ctaButtons":[],"eyebrow":null,"headline":"More articles like this","subheading":null,"backgroundColor":"White #FFFFFF","showImageToutsAsCards":false,"contentfulchildren":[{"sys":{"type":"Entry","revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"imageTout"}}},"id":"015e6b52-7bfe-541f-86ee-a1e2c4be33f4","headline":"The Data Science Research-Production Chasm","body":{"json":{"data":{},"content":[{"data":{},"content":[{"data":{},"marks":[],"value":"Tell me if this situation sounds familiar: You’ve shown in a proof-of-concept setting that your new ML model will be effective, but after a full-scale fit, the performance isn’t quite what you expected.","nodeType":"text"}],"nodeType":"paragraph"}],"nodeType":"document"}},"callToActionButton":{"id":"6ff761ec-7f5c-53ae-90c0-b628684dd456","buttonType":"Tertiary","buttonText":"Read More","buttonLink":"/the-data-science-research-production-chasm","forwardQueryParams":null,"gTagEventName":null,"modal":null},"imageAltText":null,"asset":{"title":"2026 // QS Blog / Article 2","gatsbyImageData":{"images":{"sources":[{"srcSet":"//images.ctfassets.net/pacigpl3aj13/52cUZVIsI1ZpDcnL8isIHT/b608a90b5ab991bff172f6422bcf33a7/1_YQl9iYXsQ2t6WUz6EmRMFA.png?w=717&h=340&q=90&fm=webp 717w","sizes":"100vw","type":"image/webp"}],"fallback":{"src":"//images.ctfassets.net/pacigpl3aj13/52cUZVIsI1ZpDcnL8isIHT/b608a90b5ab991bff172f6422bcf33a7/1_YQl9iYXsQ2t6WUz6EmRMFA.png?w=717&h=340&q=90&fm=png","srcSet":"//images.ctfassets.net/pacigpl3aj13/52cUZVIsI1ZpDcnL8isIHT/b608a90b5ab991bff172f6422bcf33a7/1_YQl9iYXsQ2t6WUz6EmRMFA.png?w=717&h=340&q=90&fm=png 717w","sizes":"100vw"}},"layout":"fullWidth","width":1,"height":0.4741980474198047,"placeholder":{"fallback":"data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAJCAMAAAAFH/x6AAAA+VBMVEUAAABZXWCvvci0ws6uvcgAAACwv8vJ2+rK3OvK3ewAAAAAAACAipS8zNu8zdu2x9S0xNHH2ObD1eO0xM/Q4/LH2OfP4/O1xtbA0N7H2ObH2edVXWQAAAAAAAC1xNLL3ezJ2unL3eoAAADB0+HO4fC1xdLL3u3M3+64yNjO4vHR5fSqucUAAAAAAAAAAACcqrObqLGEjpWSoKrC1OKwv82ntcDO4vHJ3ezO4vKsu8qyws/G2ee/0t8AAACpucbD1uPC1OHB0+AAAAAAAAAAAAAAAACywtDL3u3I2ejL3u0AAAAAAAAAAAAAAAAAAAAAAADP4vHD1OLM3+4kcYBUAAAAUHRSTlMAHFZcMQI6zt51AwchbnY/LZpXLrO8szBGiVoICA070OB1BW+zS/z8T7LRIAsYDCAjEx9zPyGAhoAgIlEuASuVoVcEESkeLZunVxkTFBUgJU2eODQAAABjSURBVAjXY2QEgd8MKICFFSrIysbA8AsqycgDFPsDloGD/yxCYFr3CiOj9jVGRs0bYK4eEN9SRyg7+dv2MKMdlPPjMMIiJg4g+H2TjQ1JjIFRxoDxvuBhNCepMTF+vIIqxgAAJ1EWB9jp/o8AAAAASUVORK5CYII="}}},"mobileImage":null},{"sys":{"type":"Entry","revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"imageTout"}}},"id":"7c0b46b6-5f43-5133-b4bf-dc977e7ac9d4","headline":"Clear Roles, Full-Stack, Can’t Lose","body":{"json":{"nodeType":"document","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"Much has been made in the data science blogosphere (humble as it may be) of the evolution towards the “full-stack data scientist”. A full-stack data scientist is…well, let’s hear from some of the pioneering bloggers:","marks":[],"data":{}}]}]}},"callToActionButton":{"id":"578adeed-76ab-52af-a4a6-678a8d506061","buttonType":"Tertiary","buttonText":"Read More","buttonLink":"/clear-roles-full-stack-cant-lose","forwardQueryParams":null,"gTagEventName":null,"modal":null},"imageAltText":null,"asset":{"title":"QS Blog Article 3","gatsbyImageData":{"images":{"sources":[{"srcSet":"//images.ctfassets.net/pacigpl3aj13/5Ios1IxvGgjQldGivM0EmW/27924d73ecad84d05294445d300e68bc/1_S9pcZsVuOoold2HF61z-bA.png?w=750&h=570&q=90&fm=webp 750w,\n//images.ctfassets.net/pacigpl3aj13/5Ios1IxvGgjQldGivM0EmW/27924d73ecad84d05294445d300e68bc/1_S9pcZsVuOoold2HF61z-bA.png?w=1080&h=821&q=90&fm=webp 1080w,\n//images.ctfassets.net/pacigpl3aj13/5Ios1IxvGgjQldGivM0EmW/27924d73ecad84d05294445d300e68bc/1_S9pcZsVuOoold2HF61z-bA.png?w=1366&h=1038&q=90&fm=webp 1366w,\n//images.ctfassets.net/pacigpl3aj13/5Ios1IxvGgjQldGivM0EmW/27924d73ecad84d05294445d300e68bc/1_S9pcZsVuOoold2HF61z-bA.png?w=1920&h=1459&q=90&fm=webp 1920w","sizes":"100vw","type":"image/webp"}],"fallback":{"src":"//images.ctfassets.net/pacigpl3aj13/5Ios1IxvGgjQldGivM0EmW/27924d73ecad84d05294445d300e68bc/1_S9pcZsVuOoold2HF61z-bA.png?w=750&h=570&q=90&fm=png","srcSet":"//images.ctfassets.net/pacigpl3aj13/5Ios1IxvGgjQldGivM0EmW/27924d73ecad84d05294445d300e68bc/1_S9pcZsVuOoold2HF61z-bA.png?w=750&h=570&q=90&fm=png 750w,\n//images.ctfassets.net/pacigpl3aj13/5Ios1IxvGgjQldGivM0EmW/27924d73ecad84d05294445d300e68bc/1_S9pcZsVuOoold2HF61z-bA.png?w=1080&h=821&q=90&fm=png 1080w,\n//images.ctfassets.net/pacigpl3aj13/5Ios1IxvGgjQldGivM0EmW/27924d73ecad84d05294445d300e68bc/1_S9pcZsVuOoold2HF61z-bA.png?w=1366&h=1038&q=90&fm=png 1366w,\n//images.ctfassets.net/pacigpl3aj13/5Ios1IxvGgjQldGivM0EmW/27924d73ecad84d05294445d300e68bc/1_S9pcZsVuOoold2HF61z-bA.png?w=1920&h=1459&q=90&fm=png 1920w","sizes":"100vw"}},"layout":"fullWidth","width":1,"height":0.7599999999999999,"placeholder":{"fallback":"data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAMAAADTRh9nAAAAeFBMVEX////9/f319fX6+vr4+fv6+/z8/Pz//fv9+fbk5+3p7PD7+/v18Ozx5+D29vb39/f///7+/v74+Pjw8PDv7+/y8vLs7Ozu7u7c3NzY2Nj5+fnx8fLr6+v6/Pz8/v3+/f38+vrk7evr8fDz7+/p4eL09PT7+/zz8/PxQeYAAAAAfklEQVQYGWXBCRKCMAADwKRVPKqtoRa8b/T/PxQHHRB28UNjiAFrMUSiZzQGM0ym6JrNwcwtlhYt+rASc++D0BBqCnGdCzUJSEXprHM2brZx55zNUkmIQk374hCJD+HreIKE8wVd1xtI3B9Ei6kC+XylgH8kBuSc0CNvKiM03ga7BdBxtls0AAAAAElFTkSuQmCC"}}},"mobileImage":null},{"sys":{"type":"Entry","revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"imageTout"}}},"id":"7679f6e1-8292-58de-a018-20479c7d1df8","headline":"Applying “Data Science Triage” to treat context-switching pains","body":{"json":{"nodeType":"document","data":{},"content":[{"nodeType":"paragraph","data":{},"content":[{"nodeType":"text","value":"At Root Insurance, our data scientists align with cross-functional product teams, but we are empowered to make long-term investments to develop fundamentally new ideas. ","marks":[],"data":{}}]}]}},"callToActionButton":{"id":"8f5f572b-4952-5eb7-bb9c-be4681a297fc","buttonType":"Tertiary","buttonText":"Read More","buttonLink":"/applying-data-science-triage-to-treat-context-switching-pains","forwardQueryParams":null,"gTagEventName":null,"modal":null},"imageAltText":null,"asset":{"title":"QS Blog Article 4","gatsbyImageData":{"images":{"sources":[{"srcSet":"//images.ctfassets.net/pacigpl3aj13/1MGaSMYzAIxgYQQiLFFPd0/d86ff02fad129a5e79de5a50f325ef3c/1_i7kqlkL9X23MJDfTgQgwyQ.png?w=750&h=616&q=90&fm=webp 750w,\n//images.ctfassets.net/pacigpl3aj13/1MGaSMYzAIxgYQQiLFFPd0/d86ff02fad129a5e79de5a50f325ef3c/1_i7kqlkL9X23MJDfTgQgwyQ.png?w=1080&h=887&q=90&fm=webp 1080w,\n//images.ctfassets.net/pacigpl3aj13/1MGaSMYzAIxgYQQiLFFPd0/d86ff02fad129a5e79de5a50f325ef3c/1_i7kqlkL9X23MJDfTgQgwyQ.png?w=1366&h=1122&q=90&fm=webp 1366w,\n//images.ctfassets.net/pacigpl3aj13/1MGaSMYzAIxgYQQiLFFPd0/d86ff02fad129a5e79de5a50f325ef3c/1_i7kqlkL9X23MJDfTgQgwyQ.png?w=1920&h=1577&q=90&fm=webp 1920w","sizes":"100vw","type":"image/webp"}],"fallback":{"src":"//images.ctfassets.net/pacigpl3aj13/1MGaSMYzAIxgYQQiLFFPd0/d86ff02fad129a5e79de5a50f325ef3c/1_i7kqlkL9X23MJDfTgQgwyQ.png?w=750&h=616&q=90&fm=png","srcSet":"//images.ctfassets.net/pacigpl3aj13/1MGaSMYzAIxgYQQiLFFPd0/d86ff02fad129a5e79de5a50f325ef3c/1_i7kqlkL9X23MJDfTgQgwyQ.png?w=750&h=616&q=90&fm=png 750w,\n//images.ctfassets.net/pacigpl3aj13/1MGaSMYzAIxgYQQiLFFPd0/d86ff02fad129a5e79de5a50f325ef3c/1_i7kqlkL9X23MJDfTgQgwyQ.png?w=1080&h=887&q=90&fm=png 1080w,\n//images.ctfassets.net/pacigpl3aj13/1MGaSMYzAIxgYQQiLFFPd0/d86ff02fad129a5e79de5a50f325ef3c/1_i7kqlkL9X23MJDfTgQgwyQ.png?w=1366&h=1122&q=90&fm=png 1366w,\n//images.ctfassets.net/pacigpl3aj13/1MGaSMYzAIxgYQQiLFFPd0/d86ff02fad129a5e79de5a50f325ef3c/1_i7kqlkL9X23MJDfTgQgwyQ.png?w=1920&h=1577&q=90&fm=png 1920w","sizes":"100vw"}},"layout":"fullWidth","width":1,"height":0.8211999999999999,"placeholder":{"fallback":"data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAMAAAAhxq8pAAAAulBMVEX//////Pv8/fz8/Pz+/v7//v748/Pu7u7t7e35+fn9/f77+Pj69/b+9vX9+Pf9/f329vb7+/z+9/bz8/P7+/v6+vr+///9/v79+fj99vX19fX/+vn+9PL//fz///709PT8/P38/f37+fn89vX78vH8+fn29/j3+Pr29/r2+Pr3+fv29Pb28PH28vP29vj8/f7+/v3++fj98vH++fn+/Pz+/f39/Pz++vn98/H99fP6+/v7+vr8+fj4+PidOloqAAAAtElEQVQYGV3BV0KDABBF0avzooLGwTigEhtqJMTe+/63JWD54BwGlpZNDIxWVtcShlIzeusjQAjEL9nGeFM4LjkSnUxbTMYIgRC97ciLnd09L1xyuUSrVADT/QNAHNI7iiQ9rtKT07NZaqlVXgClzut5U88XF5dX14umqW8ARY7ELeLu/uGxoKfQk+S4iueX17fJlJaHhVl4mL1X8TH75E+UWZkl/FNYWP7VSiLC+KEOLXWAb5FJDYYlVxkEAAAAAElFTkSuQmCC"}}},"mobileImage":null},{"sys":{"type":"Entry","revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"imageTout"}}},"id":"9773792f-32e7-50a2-be09-870804a2ea3a","headline":"The Opposite of “Fake It Till You Make It”","body":{"json":{"data":{},"content":[{"data":{},"content":[{"data":{},"marks":[],"value":"One of the things that surprised me most about working in Quantitative Science at Root is how often the smartest people ask questions.","nodeType":"text"}],"nodeType":"paragraph"}],"nodeType":"document"}},"callToActionButton":{"id":"00a5988e-32e9-58e8-beee-331660c4c930","buttonType":"Tertiary","buttonText":"Read More","buttonLink":"/the-opposite-of-fake-it-till-you-make-it","forwardQueryParams":null,"gTagEventName":null,"modal":null},"imageAltText":null,"asset":{"title":"QS Blog — Fake It Till You Make It — Violin Image","gatsbyImageData":{"images":{"sources":[{"srcSet":"//images.ctfassets.net/pacigpl3aj13/HwJYfXqCF4EZI6UmWbpQC/d0e7d4ea3e263483f85aeea0f8b1bcea/1_MqQXCFrFvXtEjR64H34xFQ__1_.png?w=750&h=500&q=90&fm=webp 750w,\n//images.ctfassets.net/pacigpl3aj13/HwJYfXqCF4EZI6UmWbpQC/d0e7d4ea3e263483f85aeea0f8b1bcea/1_MqQXCFrFvXtEjR64H34xFQ__1_.png?w=1080&h=720&q=90&fm=webp 1080w,\n//images.ctfassets.net/pacigpl3aj13/HwJYfXqCF4EZI6UmWbpQC/d0e7d4ea3e263483f85aeea0f8b1bcea/1_MqQXCFrFvXtEjR64H34xFQ__1_.png?w=1366&h=910&q=90&fm=webp 1366w,\n//images.ctfassets.net/pacigpl3aj13/HwJYfXqCF4EZI6UmWbpQC/d0e7d4ea3e263483f85aeea0f8b1bcea/1_MqQXCFrFvXtEjR64H34xFQ__1_.png?w=1400&h=933&q=90&fm=webp 1400w","sizes":"100vw","type":"image/webp"}],"fallback":{"src":"//images.ctfassets.net/pacigpl3aj13/HwJYfXqCF4EZI6UmWbpQC/d0e7d4ea3e263483f85aeea0f8b1bcea/1_MqQXCFrFvXtEjR64H34xFQ__1_.png?w=1400&h=933&q=90&fm=png","srcSet":"//images.ctfassets.net/pacigpl3aj13/HwJYfXqCF4EZI6UmWbpQC/d0e7d4ea3e263483f85aeea0f8b1bcea/1_MqQXCFrFvXtEjR64H34xFQ__1_.png?w=750&h=500&q=90&fm=png 750w,\n//images.ctfassets.net/pacigpl3aj13/HwJYfXqCF4EZI6UmWbpQC/d0e7d4ea3e263483f85aeea0f8b1bcea/1_MqQXCFrFvXtEjR64H34xFQ__1_.png?w=1080&h=720&q=90&fm=png 1080w,\n//images.ctfassets.net/pacigpl3aj13/HwJYfXqCF4EZI6UmWbpQC/d0e7d4ea3e263483f85aeea0f8b1bcea/1_MqQXCFrFvXtEjR64H34xFQ__1_.png?w=1366&h=910&q=90&fm=png 1366w,\n//images.ctfassets.net/pacigpl3aj13/HwJYfXqCF4EZI6UmWbpQC/d0e7d4ea3e263483f85aeea0f8b1bcea/1_MqQXCFrFvXtEjR64H34xFQ__1_.png?w=1400&h=933&q=90&fm=png 1400w","sizes":"100vw"}},"layout":"fullWidth","width":1,"height":0.6664285714285714,"placeholder":{"fallback":"data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAMAAACejr5sAAAC2VBMVEUEAAAQAAAIAAAFAAIqDAQZBAIAAAAzDwBYKwJsPRh7UC2CWjduTzA/LxwSFA4ACAgAAAQpBAMiBAAkCAACAAAGAABQIwmCUC2VaEaVcFGDZkljTzY+MyEgIBUABggtBAJiGQJzHwGDWjKKYzp1VDJYOyEoDQAlAABYNiGNXT6ZaUt1VUROQTZIQTNXSzU9OCZDCABvHwKDJwGKKgCXb0OddkmvhlW3j12wi12ZeFF0VDlpQip7SyuAUzlnRzZMNSgSGBgqKyAkFhBrGwCLMQaWOwuaPQyQNgiQbUSdeU2rhle1kGDDnm3Qq3msiWByQiGHVC13Syx4VTwqGxMcAAB5KQOjQg2jSBaiSRiSPRN6Lg+dek+qhlm4lGXAnGy/nW3Fn26cdk6CTyp4QyCFUCtrNRRmGwBREwReIwuYQhWyVR6kSxuLQB5sNBlWLBauil2riFyriF2ykmaefVZ9VzhHHxZbKhBjJwptORp8Qh2RPBeDMhJ+PBqHQRugSh6UUTBuRi0yFAgAAAGefFN0UTVAGw0vIhMhAAAtAAk+AAExAQEbAAEfAABrMxeZQRuOQiBrOx59Ox6PTSmAUTEkCAQ6DQEsCANHGw47AAAADg0rIBZZNiFLGQtQEAFfGAR8IQKJORRfMBWAOBR1LhSLVDFNIg0mCQQXBQU5BAMZAwQFCAcsIhUwJxo8MB5UGwhvHwN8JgOLMQRrMw90LQt7IgZmIQxxOBk/FAY9IBEbCgYAAAM1CAQLBAUECAgkHRJCNiMMEQwXAQNcGQN3JgR8KAR9KgJkJgdnJApZFQRSEQVLFQRUKBVUMhwPBAUICwgWEgwMCgg2BQJnHwV+KweAKwV+KgSFMgh1LwxqJAljHAlCEwl1RCZjQCUABgYOCgcGCAgODAkICAcAAQQMAAQ3BgRWFgVrIgh3KgiCMAqPOAyeQg6UOgt2JQhZFQhfLBRrQCMAAAIYEQokGA1mrUkpAAAAW0lEQVQY02NkYGAEAygFAUKMnxkY+D7xI4uxCDAKMjI+UITxISwTRkzAIoLE2ewHZUQTUklI8EvVZGSRR/KMjCuAdOEENKW7MTS/Y2ARAlKvwg4iCQI9cx+LRQD7LBBpRh8IsQAAAABJRU5ErkJggg=="}}},"mobileImage":null}]}]}},"pageContext":{"id":"9eb4afc6-3605-5f70-99ce-2afdd8443408"}},
    "staticQueryHashes": ["1149588473","253762530","286361453","3663576919","3700698109","633915060","637342082"]}