# Clever

Always a student, the Clever engineering blog

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Comparing Snapshot-Based and Diff-Based Data Syncs

DevFeed: [Comparing Snapshot-Based and Diff-Based Data Syncs](<https://devfeed.tech/articles/everything-but-the-kitchen-sync-19730.md>)

Original publisher: [Read original article](<https://engineering.clever.com/2024/08/07/everything-but-the-kitchen-sync/>)

Author: Sam Shen

Published: 2024-08-07T18:51:01Z

Content type: article

Language: en

Sources: [Clever](<https://devfeed.tech/sources/clever.md>)

Topics: [data](<https://devfeed.tech/topics/data.md>), [debugging](<https://devfeed.tech/topics/debugging.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [data](<https://devfeed.tech/tags/data.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [interoperability](<https://devfeed.tech/tags/interoperability.md>), [resiliency](<https://devfeed.tech/tags/resiliency.md>), [syncs](<https://devfeed.tech/tags/syncs.md>)

### AI overview

Clever compares two approaches to data synchronization using a grocery-shopping analogy. The supplied text explains that snapshot-based syncing can require large source and destination snapshots, while also making debugging and uniqueness checks easier.

### Source excerpt

At Clever we move a lot of data, both from school districts into Clever and from Clever into all the external places that school districts want that data shared. Broadly, we call this behavior "syncing", and various sync flavors show up across Clever. Let's talk about two ways to perform data syncs by using an [...] The post Everything but the Kitchen Sync appeared first on Clever Engineering Blog.

## SAML Protocol

DevFeed: [SAML Protocol](<https://devfeed.tech/articles/saml-protocol-19729.md>)

Original publisher: [Read original article](<https://engineering.clever.com/2023/11/29/saml-protocol/>)

Author: Keith Richards

Published: 2023-11-29T17:55:03Z

Content type: article

Language: en

Sources: [Clever](<https://devfeed.tech/sources/clever.md>)

Topics: [saml](<https://devfeed.tech/topics/saml.md>), [Single sign-on (SSO)](<https://devfeed.tech/topics/sso.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [Security](<https://devfeed.tech/topics/security.md>)

Tags: [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [saml](<https://devfeed.tech/tags/saml.md>), [security](<https://devfeed.tech/tags/security.md>), [sso](<https://devfeed.tech/tags/sso.md>), [standard](<https://devfeed.tech/tags/standard.md>), [third-party-applications](<https://devfeed.tech/tags/third-party-applications.md>)

### AI overview

This article explains SAML as an open standard for exchanging authentication and authorization data between parties. It describes SAML's role in single sign-on, its history through SAML 2.0, and the roles of service providers and identity providers.

### Source excerpt

A tool for Identity Federation Security Assertion Markup Language, or SAML, is an open standard for exchanging authentication and authorization data between two parties. It's a common strategy for single sign-on (SSO), allowing users to sign in once and authenticate with multiple third party applications. Similar to OAuth2.0, SAML promotes data security by preventing direct [...] The post SAML Protocol appeared first on Clever Engineering Blog.

## OpenID Connect

DevFeed: [OpenID Connect](<https://devfeed.tech/articles/openid-connect-19728.md>)

Original publisher: [Read original article](<https://engineering.clever.com/2023/07/18/openid-connect/>)

Author: Keith Richards

Published: 2023-07-18T19:59:50Z

Content type: tutorial

Language: en

Sources: [Clever](<https://devfeed.tech/sources/clever.md>)

Topics: [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Protocol (disambiguation)](<https://devfeed.tech/topics/protocol.md>)

Tags: [auth](<https://devfeed.tech/tags/auth.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [openid](<https://devfeed.tech/tags/openid.md>), [openid-connect](<https://devfeed.tech/tags/openid-connect.md>), [protocol](<https://devfeed.tech/tags/protocol.md>)

### AI overview

This article explains how OpenID Connect adds user authentication and identity information to OAuth 2.0's authorization framework. It compares the roles of OAuth 2.0 and OIDC, describes OIDC's background, and introduces the relying party and OpenID provider.

### Source excerpt

Adding AuthN to OAuth2.0 OpenID Connect (OIDC) is an authentication protocol that sits on top of the OAuth2.0 protocol. It provides a standardized way for clients to authenticate users and obtain information about their identity. In simple terms, OpenID Connect allows users to log in to different applications using a single set of credentials. It [...] The post OpenID Connect appeared first on Clever Engineering Blog.

## What is OAuth?

DevFeed: [What is OAuth?](<https://devfeed.tech/articles/what-is-oauth-19727.md>)

Original publisher: [Read original article](<https://engineering.clever.com/2023/05/23/what-is-oauth/>)

Author: Keith Richards

Published: 2023-05-23T17:54:15Z

Content type: tutorial

Language: en

Sources: [Clever](<https://devfeed.tech/sources/clever.md>)

Topics: [OAuth](<https://devfeed.tech/topics/oauth.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Protocol (disambiguation)](<https://devfeed.tech/topics/protocol.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>)

Tags: [auth](<https://devfeed.tech/tags/auth.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [cryptography](<https://devfeed.tech/tags/cryptography.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [third-party-applications](<https://devfeed.tech/tags/third-party-applications.md>), [web-applications](<https://devfeed.tech/tags/web-applications.md>)

### AI overview

This primer explains OAuth as a protocol for delegated access, allowing users to grant third-party websites or applications access to information on other websites without sharing login credentials. It traces the development from OAuth 1.0a to OAuth 2.0, including OAuth 2.0's support for native applications, removal of cryptographic signature requirements, and clearer authorization roles.

### Source excerpt

A primer on delegated access OAuth, short for "open authorization", is a widely used protocol that allows users to grant third-party websites or applications access to their personal information on other websites. It provides a mechanism for secure access delegation across the internet. History Class Prior to the creation of OAuth, sharing of information with [...] The post What is OAuth? appeared first on Clever Engineering Blog.

## AuthN vs AuthZ: What is Auth?

DevFeed: [AuthN vs AuthZ: What is Auth?](<https://devfeed.tech/articles/authn-vs-authz-what-is-auth-19726.md>)

Original publisher: [Read original article](<https://engineering.clever.com/2023/03/22/authorization-and-authentication/>)

Author: Keith Richards

Published: 2023-03-22T17:48:14Z

Content type: tutorial

Language: en

Sources: [Clever](<https://devfeed.tech/sources/clever.md>)

Topics: [Authentication](<https://devfeed.tech/topics/authentication.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [passwords](<https://devfeed.tech/topics/passwords.md>), [Algorithm](<https://devfeed.tech/topics/algorithm.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [auth](<https://devfeed.tech/tags/auth.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [authn](<https://devfeed.tech/tags/authn.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [authz](<https://devfeed.tech/tags/authz.md>), [password](<https://devfeed.tech/tags/password.md>)

### AI overview

This tutorial explains the distinction between authentication, which verifies identity, and authorization, which determines access to resources. It also describes username-and-password authentication, password hashing, and certificate exchange for device identity verification.

### Source excerpt

Demystifying authentication and authorization When you hear the term Auth, what comes to mind? You probably think of signing into a system with your username and password, and you're half right. But auth is bigger than that. The bucket term also includes everything you can do in a system once you submit those credentials. Auth [...] The post AuthN vs AuthZ: What is Auth? appeared first on Clever Engineering Blog.

## Privacy and Security in Clever Messaging

DevFeed: [Privacy and Security in Clever Messaging](<https://devfeed.tech/articles/privacy-and-security-in-clever-messaging-19725.md>)

Original publisher: [Read original article](<https://engineering.clever.com/2022/10/11/privacy-and-security-in-clever-messaging/>)

Author: Ulzii Otgonbaatar

Published: 2022-10-11T18:42:13Z

Content type: article

Language: en

Sources: [Clever](<https://devfeed.tech/sources/clever.md>)

Topics: [Messaging](<https://devfeed.tech/topics/messaging.md>), [Security & Privacy](<https://devfeed.tech/topics/security-privacy.md>), [Security](<https://devfeed.tech/topics/security.md>)

Tags: [cybersecurity](<https://devfeed.tech/tags/cybersecurity.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [messaging](<https://devfeed.tech/tags/messaging.md>), [privacy](<https://devfeed.tech/tags/privacy.md>), [security](<https://devfeed.tech/tags/security.md>)

### AI overview

This article discusses the privacy and security challenges of building Clever Messaging for K-12 schools. It describes protecting student-teacher messages and files, limiting access to authorized participants, maintaining accurate section rosters, authenticating announcements, and addressing risks from malicious attachments.

### Source excerpt

Designing and engineering a messaging system that is used by 6.8 million students and half a million teachers in K-12 schools is no easy feat. While the typical threats against online systems from unauthorized and unauthenticated access to sensitive information remain, the school environment compounds privacy challenges as additional entities such as guardians, co-teachers, and [...] The post Privacy and Security in Clever Messaging appeared first on Clever Engineering Blog.

## Working at Clever: a perspective from a former intern turned full time engineer

DevFeed: [Working at Clever: a perspective from a former intern turned full time engineer](<https://devfeed.tech/articles/working-at-clever-a-perspective-from-a-former-intern-turned-full-time-engineer-19723.md>)

Original publisher: [Read original article](<https://engineering.clever.com/2022/04/25/working-at-clever-a-perspective-from-a-former-intern-turned-full-time-engineer/>)

Author: Vijay Bharadwaj

Published: 2022-04-25T17:37:36Z

Content type: opinion

Language: en

Sources: [Clever](<https://devfeed.tech/sources/clever.md>)

Topics: [engineering-culture](<https://devfeed.tech/topics/engineering-culture.md>), [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>), [Learning](<https://devfeed.tech/topics/learning.md>)

Tags: [company](<https://devfeed.tech/tags/company.md>), [covid](<https://devfeed.tech/tags/covid.md>), [culture](<https://devfeed.tech/tags/culture.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [intern](<https://devfeed.tech/tags/intern.md>), [internship](<https://devfeed.tech/tags/internship.md>), [interviewing](<https://devfeed.tech/tags/interviewing.md>), [onboarding](<https://devfeed.tech/tags/onboarding.md>), [remote](<https://devfeed.tech/tags/remote.md>)

### AI overview

A former Clever intern describes choosing the company for its culture and engineering practices, experiences during the internship and interview process, and the transition to a full-time engineering role.

### Source excerpt

During my final search for an internship, I had an idea of where I wanted to work: a place with a friendly culture and strong engineering practices - something in between a startup and a big company. To my luck, I interned at Clever - an organization that surpassed those expectations in the span of [...] The post Working at Clever: a perspective from a former intern turned full time engineer appeared first on Clever Engineering Blog.

## How we handle multi-region sessions at Clever

DevFeed: [How we handle multi-region sessions at Clever](<https://devfeed.tech/articles/how-we-handle-multi-region-sessions-at-clever-19722.md>)

Original publisher: [Read original article](<https://engineering.clever.com/2021/08/10/how-we-handle-multi-region-sessions-at-clever/>)

Author: Nathan Leiby

Published: 2021-08-10T20:48:35Z

Content type: tutorial

Language: en

Sources: [Clever](<https://devfeed.tech/sources/clever.md>)

Topics: [Resilience](<https://devfeed.tech/topics/resilience.md>), [Availability](<https://devfeed.tech/topics/availability.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [systems](<https://devfeed.tech/topics/systems.md>), [saml](<https://devfeed.tech/topics/saml.md>)

Tags: [availability](<https://devfeed.tech/tags/availability.md>), [aws](<https://devfeed.tech/tags/aws.md>), [database](<https://devfeed.tech/tags/database.md>), [devops](<https://devfeed.tech/tags/devops.md>), [resilience](<https://devfeed.tech/tags/resilience.md>), [resiliency](<https://devfeed.tech/tags/resiliency.md>), [saml](<https://devfeed.tech/tags/saml.md>), [systems](<https://devfeed.tech/tags/systems.md>)

### AI overview

Clever Engineering explains a five-stage approach to making user sessions resilient: persist session data in a database, run multiple service instances, use database replicas, and mirror the setup across regions to withstand failures such as service, database, networking, or AWS region outages.

### Source excerpt

Why multi-region sessions? Each year leading up to Back to School (our busiest season), Clever's engineering team invests in our highest traffic systems to make sure we can handle user growth and new traffic patterns. During 2020-2021, SAML auth at Clever grew from <10% of our login related traffic to about 40% of our traffic! For this [...] The post How we handle multi-region sessions at Clever appeared first on Clever Engineering Blog.