Architecture-and-optimization
GitHub
Mon Nov 25 2024
Breaking down CPU speed: How utilization impacts performance
The Performance Engineering team at GitHub assessed how CPU performance degrades as utilization increases and how this relates to capacity.
personalization
Airbnb
Wed Nov 20 2024
Building a User Signals Platform at Airbnb
Engineering
How to make Storybook Interactions respect user motion preferences
With this custom addon, you can ensure your workplace remains accessible to users with motion sensitivities while benefiting from Storybook’...
infrastructure
Pinterest
Mon Nov 18 2024
Change Data Capture at Pinterest
engineering
Wed Nov 13 2024
Airbnb’s AI-powered photo tour using Vision Transformer
bazel
Tue Nov 12 2024
Adopting Bazel for Web at Scale
search-engines
Mon Nov 11 2024
Transforming Location Retrieval at Airbnb: A Journey from Heuristics to Reinforcement Learning
Mon Oct 28 2024
Automation Platform v2: Improving Conversational AI at Airbnb
pinterest
Wed Oct 23 2024
Resource Management with Apache YuniKorn™ for Apache Spark™ on AWS EKS at Pinterest
Cloudflare
Tue Oct 22 2024
Building Vectorize, a distributed vector database, on Cloudflare’s Developer Platform
Vectorize was recently upgraded and made generally available, now supporting indexes of up to 5 million vectors, delivering faster responses...
Fri Oct 11 2024
Ray Batch Inference at Pinterest (Part 3)
Edge
Wed Oct 09 2024
Improving platform resilience at Cloudflare through automation
We realized that we need a way to automatically heal our platform from an operations perspective, and designed and built a workflow orchestr...
distributed-systems
Wed Oct 02 2024
Structured DataStore (SDS): Multi-model Data Management With a Unified Serving Stack
ai
Tue Sep 24 2024
Sandcastle: data/AI apps for everyone
GitHub Enterprise Cloud with data residency: How we built the next evolution of GitHub Enterprise using GitHub
How we used GitHub to build GitHub Enterprise Cloud with data residency.
Fri Sep 20 2024
Feature Caching for Recommender Systems w/ Cachelib
data-infrastructure
Tue Sep 17 2024
Pinterest Tiered Storage for Apache Kafka®️: A Broker-Decoupled Approach
Docker
Mon Sep 16 2024
Secure by Design for AI: Building Resilient Systems from the Ground Up
Dive into the “Secure by Design” approach essential for AI systems, focusing on embedding security features from the start to fortify AI aga...
Tue Sep 10 2024
Meet Pinterest’s Internship Mentors of the Year
data
Riverbed Data Hydration — Part 1
time-series-database
Mon Sep 09 2024
Improving Efficiency Of Goku Time Series Database at Pinterest (Part — 3)
Fri Aug 30 2024
Improving ABR Video Performance at Pinterest
front-end-development
Wed Aug 28 2024
Building Postcards for “Airbnb” Scale
recommendation-system
Tue Aug 20 2024
Redesigning Pinterest’s Ad Serving Systems with Zero Downtime (part 2)
privacy
Mon Aug 19 2024
Personal Data Classification
Tue Aug 13 2024
Onboarding as a Web Engineer @ Pinterest
The ultimate guide to developer happiness
Five actionable tips and strategies to supercharge developer happiness—and a more innovative workplace.
Mon Aug 12 2024
Adding the ESLint Tool to an AI Assistant: Improving Recommendations for JS/TS Projects
We show how to enable our AI assistant to provide advice that is both helpful and actionable for linting JavaScript and TypeScript projects.
machine-learning
Thu Aug 08 2024
NEP: Notification System and Relevance
Wed Jul 31 2024
Delivering Faster Analytics at Pinterest
kubernetes
Apache Flink® on Kubernetes
Mon Jul 29 2024
How GitHub supports neurodiverse employees (and how your company can, too)
Teams with neurodivergent employees can be up to 30 percent more productive.
How to Create Dockerfiles with GenAI
We explore how to use an AI assistant to generate Dockerfiles for specific projects.
Tue Jul 23 2024
How Airbnb Smoothly Upgrades React
How we improved availability through iterative simplification
Solving and staying ahead of problems when scaling up a system of GitHub’s size is a delicate process.
Fri Jul 19 2024
TiDB Adoption at Pinterest
Mon Jul 15 2024
Understanding Develocity Build Data with Honeycomb
How an AI Assistant Can Help Configure Your Project’s Git Hooks
Make Git hooks easier to configure and use by providing project-specific context to Docker's AI assistant.
Fri Jul 12 2024
GitHub Availability Report: June 2024
In June, we experienced two incidents that resulted in degraded performance across GitHub services.
Thu Jul 11 2024
How to Run Hugging Face Models Programmatically Using Ollama and Testcontainers
Learn how you can programmatically consume and run AI models from Hugging Face with Testcontainers and Ollama.
Wed Jul 10 2024
Building Pinterest Canvas, a text-to-image foundation model
Tue Jul 09 2024
Exploring the challenges in creating an accessible sortable list (drag-and-drop)
Drag-and-drop is a highly interactive and visual interface.
Mon Jul 01 2024
Using Generative AI to Create Runnable Markdown
Explore the innovative realm of AI developer tools with Docker's GenAI Docker Labs series.
data-science
Lyft
Tue Jun 25 2024
FAQ: Common Questions from Candidates During Lyft Data Science Interviews
Mon Jun 17 2024
Ray Infrastructure at Pinterest
Thu Jun 13 2024
Unlocking the power of unstructured data with RAG
Unstructured data holds valuable information about codebases, organizational best practices, and customer feedback.
Wed Jun 12 2024
GitHub Availability Report: May 2024
In May, we experienced one incident that resulted in degraded performance across GitHub services.
Tue Jun 11 2024
How we improved push processing on GitHub
Pushing code to GitHub is one of the most fundamental interactions that developers have with GitHub every day.
Fri Jun 07 2024
Redesigning Pinterest’s Ad Serving Systems with Zero Downtime
Thu Jun 06 2024
Develop Kubernetes Operators in Java without Breaking a Sweat
Discover testing possibilities that let developers consider Java as the language of choice for Kubernetes-related projects.
Mon Jun 03 2024
How GitHub reduced testing time for iOS apps with new runner features
Learn how GitHub used macOS and Apple Silicon runners for GitHub Actions to build, test, and deploy our iOS app faster.
Observability
Adopting OpenTelemetry for our logging pipeline
Recently, Cloudflare's Observability team undertook an effort to migrate our existing syslog-ng backed logging infrastructure to instead bei...
Fri May 24 2024
Web Performance Regression Detection (Part 2 of 3)
Mon May 13 2024
HBase Deprecation at Pinterest
Fri May 10 2024
GitHub Availability Report: April 2024
In April, we experienced four incidents that resulted in degraded performance across GitHub services.
Tue May 07 2024
Animations: Bringing the Host Passport to Life on iOS
Wed May 01 2024
5 tips to supercharge your developer career in 2024
From mastering prompt engineering to leveraging AI for code security, here’s how you can excel in today's competitive job market.
Fri Apr 26 2024
Airbnb Brandometer: Powering Brand Perception Measurement on Social Media Data with AI
Wed Apr 24 2024
A Promising Methodology for Testing GenAI Applications in Java
Testing applications that incorporate AI can be difficult.
android
Thu Apr 11 2024
Introducing Trio | Part III
Wed Apr 10 2024
GitHub Availability Report: March 2024
In March, we experienced two incidents that resulted in degraded performance across GitHub services.
Tue Apr 09 2024
4 ways GitHub engineers use GitHub Copilot
GitHub Copilot increases efficiency for our engineers by allowing us to automate repetitive tasks, stay focused, and more.
Get started with the latest updates for Dockerfile syntax (v1.7.0)
Dockerfiles are fundamental tools for developers working with Docker, serving as a blueprint for creating Docker images.
mobile
Thu Apr 04 2024
Introducing Trio | Part II
What is retrieval-augmented generation, and what does it do for generative AI?
Here’s how retrieval-augmented generation, or RAG, uses a variety of data sources to keep AI models fresh with up-to-date information and or...
Debian’s Dedication to Security: A Robust Foundation for Docker Developers
We outline how and why Debian operates as a secure basis for development and makes a good choice for Docker Official Images.
text-to-sql
Tue Apr 02 2024
How we built Text-to-SQL at Pinterest
Mon Apr 01 2024
OpenSSH and XZ/liblzma: A Nation-State Attack Was Thwarted, What Did We Learn?
Docker CTO Justin Cormack looks at what we can learn from malicious code in upstream tarballs of xz targeted at a subset of OpenSSH servers....
Thu Mar 28 2024
Introducing Trio | Part I
generative-ai-use-cases
Tue Mar 26 2024
The Field Guide to Non-Engagement Signals
Mon Mar 25 2024
Using GitHub Copilot in your IDE: Tips, tricks, and best practices
GitHub Copilot is a powerful AI assistant.
Wed Mar 20 2024
LinkSage: GNN-based Pinterest Off-site Content Understanding
observability
Tue Mar 12 2024
Improving Efficiency Of Goku Time Series Database at Pinterest (Part 2)
Thu Mar 07 2024
Hard and soft skills for developers coding in the age of AI
While AI revolutionizes software development, it still relies on developers to pilot its use.
Wed Mar 06 2024
How GitHub uses merge queue to ship hundreds of changes every day
Here's how merge queue transformed the way GitHub deploys changes to production at scale, so you can do the same for your organization.
monetization
Tue Mar 05 2024
User Action Sequence Modeling for Pinterest Ads Engagement Modeling
Mon Mar 04 2024
Keeping repository maintainer information accurate
Discover how keeping repository maintainer information accurate through CODEOWNERS files and automating maintenance with tools like cleanown...
Thu Feb 22 2024
Unlocking AI Assisted Development Safely: From Idea to GA
How AI code generation works
Explore the capabilities and benefits of AI code generation, and how it can improve the developer experience for your enterprise.
Wed Feb 14 2024
GitHub Availability Report: January 2024
In January, we experienced three incidents that resulted in degraded performance across GitHub services.
Fixing security vulnerabilities with AI
A peek under the hood of GitHub Advanced Security code scanning autofix.
Tue Feb 13 2024
Bringing npm registry services to GitHub Codespaces
The npm engineering team recently transitioned to using GitHub Codespaces for local development for npm registry services.
Thu Feb 08 2024
GitHub’s Engineering Fundamentals program: How we deliver on availability, security, and accessibility
The Fundamentals program has helped us address tech debt, improve reliability, and enhance observability of our engineering systems.
ios
Thu Feb 01 2024
Migrating Our iOS Build System from Buck to Bazel
Wed Jan 31 2024
Docker Security Advisory: Multiple Vulnerabilities in runc, BuildKit, and Moby
Docker security advisory about multiple vulnerabilities in runc, BuildKit, and Moby: We will publish patched versions of runc, BuildKit, and...
Fri Jan 26 2024
Migrating Policy Delivery Engines with (almost) Nobody Knowing
Community
Wed Jan 24 2024
How GitHub’s Developer Experience team improved innerloop development
Our latest solution to the ubiquitous engineering problem of integration testing in a distributed service ecosystem here at GitHub.
Mon Jan 22 2024
How to get in the flow while coding (and why it’s important)
Explore what flow state entails, its benefits, and three tips for reaching it the next time you code.
10 unexpected ways to use GitHub Copilot
GitHub Copilot is widely known for its code generation feature.
Thu Jan 18 2024
Handling Online-Offline Discrepancy in Pinterest Ads Ranking System
Wed Jan 17 2024
GitHub Availability Report: December 2023
In December, we experienced three incidents that resulted in degraded performance across GitHub services.
A developer’s second brain: Reducing complexity through partnership with AI
As we look to empower developers with AI tools, we inadvertently integrate AI deeper into the way developers work.
Tue Jan 09 2024
Evolution of Ads Conversion Optimization Models at Pinterest
database
Thu Jan 04 2024
Building Pinterest’s new wide column database using RocksDB
Thu Dec 21 2023
The Top Pinterest Engineering Blog posts from 2023
Tue Dec 19 2023
How we organize and get things done with SERVICEOWNERS
Take CODEOWNERS and GitHub teams to the next level.
Wed Dec 13 2023
GitHub Availability Report: November 2023
In November, we experienced one incident that resulted in degraded performance across GitHub services.
PayPal
Mon Dec 11 2023
Declarative Feature Engineering at PayPal
Thu Dec 07 2023
Upgrading GitHub.com to MySQL 8.0
GitHub uses MySQL to store vast amounts of relational data.
Wed Dec 06 2023
How we’re experimenting with LLMs to evolve GitHub Copilot
Learn how we’re experimenting with generative AI models to extend GitHub Copilot across the developer lifecycle.
Wed Nov 29 2023
Transforming CRM DevOps at Airbnb: A Powerful Framework for Continuous Delivery
Tue Nov 28 2023
A Glimpse into the Redesigned Goku-Ingestor vNext at Pinterest
Data Quality Score: The next chapter of data quality at Airbnb
Wed Nov 22 2023
Improving Efficiency Of Goku Time Series Database at Pinterest (Part — 1)
Wed Nov 15 2023
Wisdom of Unstructured Data: Building Airbnb’s Listing Knowledge from Big Text Data
Canva
Tue Nov 14 2023
Summarizing Post Incident Reviews with GPT-4
How we use GPT-4 to summarize incident reports.
Mon Nov 13 2023
GitHub Availability Report: October 2023
In October, we experienced two incidents that resulted in degraded performance across GitHub services.
Tue Oct 31 2023
PinCompute: A Kubernetes Backed General Purpose Compute Platform for Pinterest
Mon Oct 30 2023
The architecture of today’s LLM applications
Here’s everything you need to know to build your first LLM app and problem spaces you can start exploring today.
Fri Oct 27 2023
Demystifying LLMs: How they can do things they weren’t trained to do
Explore how LLMs generate text, why they sometimes hallucinate information, and the ethical implications surrounding their incredible capabi...
Wed Oct 18 2023
My Journey to Airbnb — Helena Zarazua
anomaly-detection
Tue Oct 17 2023
Bring Your Own Algorithm to Anomaly Detection
Mon Oct 16 2023
Measuring Git performance with OpenTelemetry
Use our new open source Trace2 receiver component and OpenTelemetry to capture and visualize telemetry from your Git commands.
Wed Oct 11 2023
GitHub Availability Report: September 2023
In September, we experienced two incidents that resulted in degraded performance across GitHub services.
Mon Oct 09 2023
Prompting GitHub Copilot Chat to become your personal AI assistant for accessibility
GitHub Copilot Chat can help you learn about accessibility and improve the accessibility of your code.
culture
Mon Oct 02 2023
Pinternship Wrap-Up: Summer 2023
North-America
LinkedIn
Career stories: The math-music connection in data science
When Javier signed up for a programming course during the pandemic, he had no idea that his career was about to shift from the world of musi...
Fri Sep 29 2023
Lessons from debugging a tricky direct memory leak
Wed Sep 27 2023
How I used GitHub Copilot Chat to build a ReactJS gallery prototype
GitHub Copilot Chat can help developers create prototypes, understand code, make UI changes, troubleshoot errors, make code more accessible,...
how-to
Wix
How To Amplify Cross-Team Collaboration
Tue Sep 26 2023
How GitHub uses GitHub Actions and Actions larger runners to build and test GitHub.com
Recently, we’ve been working to make our CI experience better by leveraging the newly released GitHub feature, Actions larger runners, to ru...
Training Foundation Improvements for Closeup Recommendation Ranker
swiftui
Thu Sep 21 2023
Unlocking SwiftUI at Airbnb
inclusive-ai
Wed Sep 20 2023
Building for Inclusivity: The Technical Blueprint of Pinterest’s Multidimensional Diversification
trust-engineering
Career stories: Influencing engineering growth at LinkedIn
Since learning frontend and backend skills, Rishika’s passion for engineering has expanded beyond her team at LinkedIn to grow into her own ...
Wed Sep 13 2023
GitHub Availability Report: August 2023
In August, we experienced two incidents that resulted in degraded performance across GitHub services.
Tue Sep 12 2023
Last Mile Data Processing with Ray
Wed Sep 06 2023
How to build an enterprise LLM application: Lessons from GitHub Copilot
The team behind GitHub Copilot shares its lessons for building an LLM app that delivers value to both individuals and enterprise users at sc...
Tue Sep 05 2023
MLEnv: Standardizing ML at Pinterest Under One ML Engine to Accelerate Innovation
Thu Aug 31 2023
How GitHub reduces costs with upgraded Codespaces
See how much more you can get out of GitHub Codespaces by taking advantage of the improved processing power and increased headroom the RAM p...
Wed Aug 30 2023
Why Rust is the most admired language among developers
Rust continues to top the charts as the most admired and desired language by developers, and in this post, we dive a little deeper into how ...
Mon Aug 28 2023
10 things you didn’t know you could do with GitHub Projects
Learn how to optimize your usage of GitHub Projects to plan and track your work from idea to production.
Thu Aug 24 2023
Unleashing GitHub Codespaces templates to ignite your development
Learn how to leverage templating features in GitHub Codespaces to streamline your project setup, improve consistency, and simplify collabora...
Mon Aug 21 2023
Highlights from Git 2.42
Another new release of Git is here! Take a look at some of our highlights on what's new in Git 2.
Thu Aug 17 2023
mTLS: When certificate authentication is done wrong
In this post, we'll deep dive into some interesting attacks on mTLS authentication.
Wed Aug 09 2023
GitHub Availability Report: July 2023
In July, we experienced one incident that resulted in degraded performance across GitHub services.
iOS
Thu Aug 03 2023
Career Stories: Building community and connections
As Keerthana explored her passion for iOS engineering, she also found mentorship and new working styles.
Introducing code referencing for GitHub Copilot
Today, we’re announcing a private beta of GitHub Copilot with code referencing that includes a filter to detect code suggestions matching pu...
Create the engineering career you love at Pinterest
Wed Aug 02 2023
How we build containerized services at GitHub using GitHub
Learn about how we build containerized services that power microservices on the GitHub.
Thu Jul 27 2023
Scaling merge-ort across GitHub
GitHub switched to performing merges and rebases using merge-ort.
Tue Jul 25 2023
Riverbed: Optimizing Data Access at Airbnb’s Scale
Securely Scaling Big Data Access Controls At Pinterest
How to build a GPT-3 App with Nextjs, React, and GitHub Copilot
In this step-by-step tutorial, you will learn how to use GitHub Copilot to build an application with OpenAI’s gpt-3.
Wed Jul 19 2023
Metrics for issues, pull requests, and discussions
Tue Jul 18 2023
Analyzing Time Series for Pinterest Observability
Company
Mon Jul 17 2023
A developer’s guide to prompt engineering and LLMs
Prompt engineering is the art of communicating with a generative AI model.
Wed Jul 12 2023
GitHub Availability Report: June 2023
Tue Jul 11 2023
GitHub CLI project command is now generally available!
Level up your use of GitHub Projects on the command line and in GitHub Actions with the new project CLI command.
sre
Tuning Flink Clusters for Stability and Efficiency
feature-store
Chronon — A Declarative Feature Engineering Framework
Thu Jul 06 2023
Accessibility considerations behind code search and code view
A look at how we improved the readability of code on GitHub.
Wed Jun 21 2023
Crafting a better, faster code view
The new GitHub Code View brings users many new features to improve the code reading and exploration experiences, and we overcame a number of...
Tue Jun 20 2023
How to use GitHub Copilot: Prompts, tips, and use cases
In this prompt guide for GitHub Copilot, two GitHub developer advocates, Rizel and Michelle, will share examples and best practices for comm...
Wed Jun 14 2023
GitHub Availability Report: May 2023
In May, we experienced four incidents that resulted in degraded performance across GitHub services.
Tue Jun 13 2023
Deep Multi-task Learning and Real-time Personalization for Closeup Recommendations
Survey reveals AI’s impact on the developer experience
We surveyed 500 U.
Square
Maximizing Solution Visibility with Machine Learning-Powered App Recommendations
international-hiring
Thu Jun 08 2023
Lyft Expands Team to Czechia
Developer experience: What is it and why should you care?
Explore how investing in a better developer experience frees developers to do what matters most: building great software.
technology
Metis: Building Airbnb’s Next Generation Data Management Platform
payments
Tue Jun 06 2023
PayPal Has Updated Its Webhook Verification Endpoint
Thu May 25 2023
Representation online matters: practical end-to-end diversification in search and recommender…
Tue May 23 2023
Pacer: Pinterest’s New Generation of Asynchronous Computing Platform
Accelerating Ruby: How Our Bundle Install Times Got 12x Faster
Thu May 18 2023
GitHub celebrates developers with disabilities on Global Accessibility Awareness Day
GitHub is the home for all developers and on this Global Accessibility Awareness Day we are thrilled to celebrate the achievements of disabl...
Connecting Block Business Units with AWS API Gateway
Wed May 17 2023
Warden: Real Time Anomaly Detection at Pinterest
Inside GitHub: Working with the LLMs behind GitHub Copilot
Developers behind GitHub Copilot discuss what it was like to work with OpenAI’s large language model and how it informed the development of ...
How GitHub Copilot is getting better at understanding your code
With a new Fill-in-the-Middle paradigm, GitHub engineers improved the way GitHub Copilot contextualizes your code.
http-streaming
Improving Performance with HTTP Streaming
Thu May 11 2023
Journey Platform: A low-code tool for creating interactive user workflows
Wed May 10 2023
Flexible Continuous Integration for iOS
Tue May 09 2023
An ML based approach to proactive advertiser churn prevention
motivation
Thu May 04 2023
Reflecting on a decade @Wix- Lessons learned
Keeping IDE Sync Times at Bay: A Historical Perspective
Tue May 02 2023
Large-scale User Sequences at Pinterest
Wed Apr 26 2023
My Journey to Airbnb — Michael Kinoti
Uber
Thu Apr 20 2023
Measuring Performance for iOS Apps at Uber Scale
Curious about the magic behind Uber’s iOS app performance? Check out our blog post to learn how we overcame scalability challenges in our ap...
Thu Mar 23 2023
Improving Istio Propagation Delay
Wed Mar 22 2023
Building Airbnb Categories with ML & Human in the Loop
lyft2vec — Embeddings at Lyft
Thu Feb 23 2023
Pinterest is now on HTTP/3
Mon Feb 06 2023
The technology behind GitHub’s new code search
A look at what went into building the world's largest public code search index.
Thu Feb 02 2023
Enabling branch deployments through IssueOps with GitHub Actions
How the Uber Membership Team Developed the ActionCard Design Pattern to Do More with Less
In this blog post, discover how a team of Uber app engineers streamlined development with a new native mobile architecture, resulting in far...
Wed Feb 01 2023
GitHub Availability Report: January 2023
In January, we experienced two incidents, one that resulted in degraded performance for Packages and Pages and another that impacted Git use...
EMEA
Tue Jan 31 2023
Career stories: Taking LinkedIn Engineering to Tel Aviv
A mom of three, military veteran, and former white-hat hacker, Eynav joined LinkedIn through the acquisition of the marketing analytics star...
Stampeding Elephants
deep-learning
Mon Jan 30 2023
Learning To Rank Diversely
Powering Millions of Real-Time Decisions with LyftLearn Serving
security
Thu Jan 26 2023
Employee-facing Mutual TLS
Thu Jan 12 2023
Celebrating the release of Android Studio Electric Eel
Wed Jan 11 2023
Making Airbnb’s Android app more accessible
design
Tinder
Mon Jan 09 2023
Building Obsidian, Tinder’s Design System
Tue Jan 03 2023
Command Line Observability with Semantic Exit Codes
Production-Infrastructure-Engineering
Fri Dec 16 2022
Career stories: Next-gen systems, servers, and SREs
Saira joined our Bangalore site reliability engineering (SRE) team to tackle large-scale, site engineering challenges and grow.
Tue Dec 13 2022
Devpod: Improving Developer Productivity at Uber with Remote Development
In this blog, we share how we improved the daily edit-build-run developer experience using DevPods, Uber’s remote development environment.
Saving 5,400 hours a year with Gradle's Configuration Cache
Recovering an estimated $1.
similarity-search
Thu Dec 08 2022
When a Picture Is Worth More Than Words
Mon Nov 07 2022
How to Categorize and Prevent Risks of Sensitive Links in URLScan
Mon Oct 24 2022
How we built the Tinder API Gateway
aws
Booking
Tue Oct 18 2022
Building Properties with AWS Step Functions
Wed Oct 12 2022
Square Payroll’s Migration from a Monolith to Microservices
Wed Oct 05 2022
How We Unified on One Graph at Block
Mon Sep 12 2022
First Annual Bazel-iOS Con 2022
exploit-exercise
Tue Jul 26 2022
Exploiting GitHub Actions on open source projects
women-in-tech
Tue Jul 12 2022
Sharon Halperin on How Femgineers are Fueling Success at Tinder
Wed Mar 23 2022
DependenTree, Graph Visualization Library
Thu Jan 27 2022
Getting Square's iOS build ready for Apple Silicon with Bazel
Thu Nov 04 2021
Herding Elephants
Beyond Mobile First
Tue Sep 28 2021
Measure, measure, measure
Thu Sep 23 2021
Server-to-Server Integration with Server-Side Google Tag Manager
Tue Aug 31 2021
Chrometric: System telemetry for Chrome OS
Thu Aug 26 2021
AWS OIDC Authentication with SPIFFE
Tue Aug 24 2021
Kotlin-Multiplatform Shared Test Resources
Thu Aug 19 2021
Why Workflow?
Wed Aug 18 2021
Upgrading Webpack 4 → 5
Tue Aug 17 2021
Threat Hunting with Kubernetes Audit Logs - Part 2
Tue Aug 10 2021
Jetpack Compose Support in Workflow
Wed Aug 04 2021
Expanding Secrets Infrastructure to AWS Lambda
Tue Aug 03 2021
Threat Hunting with Kubernetes Audit Logs
Wed Jul 21 2021
WorkManager for Background Work in Libraries
Thu Jul 15 2021
Deploying Server-Side Google Tag Manager on Cloud Run
Tue Jul 13 2021
Becoming an Organizational Leader
Wed May 26 2021
Caching E-Commerce Data for The Web
Fri Mar 05 2021
Introducing Curtains
Wed Dec 02 2020
Wiring Libraries with Cleanse
Thu Oct 08 2020
Using AWS Lambda Extensions to Accelerate AWS Secrets Manager Access
Fri Sep 04 2020
Introducing Radiography
Tue Aug 25 2020
Providing mTLS Identities to Lambdas
Wed Jul 29 2020
The State of Ruby 3 Typing
Tue Jul 14 2020
Using Amundsen to Support User Privacy via Metadata Collection at Square
Wed Jul 08 2020
Enabling Serverless Applications at Square
Tue Jun 23 2020
Introducing Anvil
Thu May 07 2020
Kubernetes - Pod Security Policies
Tue Feb 25 2020
Showing the Android Keyboard Reliably
Wed Jan 15 2020
Instrumenting Firebase Test Lab
Fri Dec 20 2019
Adopting AWS VPC Endpoints at Square
Wed Oct 16 2019
Books, an immutable double-entry accounting database service
Tue Aug 13 2019
Chasing Swallowed Exceptions
Tue Aug 06 2019
Announcing Shark: Smart Heap Analysis Reports for Kotlin
Fri Aug 02 2019
Making OpenAPI / Swagger Bearable With Your Own DSL
Tue Jul 23 2019
Square’s Growth Framework for Engineers and Engineering Managers
Mon Jul 15 2019
Effective batching in streaming dataflow jobs
Wed Jul 03 2019
Story of an Android Q Leak: attachment crazy town!
Fri May 31 2019
Shipping Binary Frameworks With Swift 5.0
How to get a binary framework shipped with Swift 5.
Tue May 07 2019
Eloquent Labs Joins Square
We’re thrilled that the team from Eloquent Labs will be joining Square.
Mon May 06 2019
RubyKaigi and the Path to Ruby 3
Mon Apr 22 2019
Developing on iOS and Android
Thu Apr 11 2019
Zooming Out From Engineering
Some insights on leadership, career development, and building teams at scale that Square’s Head of Seller, Alyssa Henry, shared during the 2...
Tue Apr 09 2019
Spin Cycle — Automating the Tedious
Fri Mar 29 2019
The Road to an Envoy Service Mesh
Thu Mar 28 2019
Mobile Web Performance @ Caviar
Across any e-commerce website, page load times are directly correlated with conversion rate.
Tue Mar 12 2019
Engineering Management Philosophies and Why They Matter Even if You Are Not a Manager
Let’s define what the role of an Engineering Manager is and how management philosophies guide an individual to fill that role.
Tue Feb 05 2019
OkHttp 3.13 Requires Android 5+
Today we’re releasing OkHttp 3.
Fri Jan 25 2019
Square Elected to a Third Term on the PCI SSC’s Board of Advisors
Wed Jan 09 2019
Making the Invisible Visible: A Look at Building Tools for Square Developers
Tue Jan 08 2019
Announcing SQLDelight 1.0
Tue Dec 18 2018
Operating Vitess
Ripping Vitess apart and putting it back together.
Scaling Christmas — An Illustrated Adventure
Fri Dec 14 2018
KotlinPoet 1.0 is here!
KotlinPoet is a collection of Kotlin API that makes generating .
Tue Dec 04 2018
Cross-Shard Queries & Lookup Tables
Shard Splits with Consistent Snapshots
Tue Nov 27 2018
Women of Bitcoin: Volume 3
In our third and final post of our series, “Women of BTC”, we’ll hear from Tobi Kral on the Engineering team and Alaina Tyrer on Executive A...
Abstracting Sharding with Vitess and Distributed Deadlocks
One of the main reasons Vitess was such a success for Cash App is that it abstracts database sharding away from the application code.
Fri Nov 16 2018
Remodeling Cash App Payments
Before we could partition our database we needed to prepare our data model.
Wed Nov 14 2018
Exploring Ruby 2.6 — Enumerator, Hash, and Enumerable Changes
New features to try in the upcoming ruby-2.
Wed Nov 07 2018
Sharding Cash
A good problem to have: Scaling up the @CashApp database with Vitess.
Tue Nov 06 2018
Enabling Modern JavaScript in Rails with Webpack(er)
When I joined Caviar in 2016, I was fully bought into React and all the good stuff around building modular systems.
Sun Oct 28 2018
Top 10 things I learnt coding on the side
Wed Oct 24 2018
Women of Bitcoin: Volume 2
Tue Oct 23 2018
Open Sourcing Subzero
Wed Oct 17 2018
Women of Bitcoin
Today, we’re excited to kick off our “Women of BTC” blog series.
Mon Oct 15 2018
SqR00t Offensive Security Tech Talks
Thu Sep 06 2018
Women Who Make (Part 2)
At Square, each of our community groups has a spotlight month.
Tue Sep 04 2018
A silent meeting is worth a thousand words
Building a culture where all thoughts can be voiced (or written as the case may be).
Mon Aug 27 2018
Announcing Okio 2
Our I/O library is converting to Kotlin.
Fri Aug 10 2018
Risky Business: Interning on Square’s Risk Team
Square’s main purpose is economic empowerment.
Wed Aug 01 2018
Square WomEng Hear + Now 2018: Lightning Talks
Hear + Now is a tech lightning talk series hosted by Square’s WomEng organization.
Thu Jul 26 2018
Women Who Make
Tue Jul 24 2018
LeakCanary 1.6 🐤
Mon Jun 25 2018
Announcing cocoapods-generate
Tue Jun 19 2018
Challenge — Table of Contents Generator
Introducing developer challenges! This is a new series where we post challenges inspired by real world applications.
Mon Jun 04 2018
Four Steps to use Sketch Libraries Efficiently
Tue May 29 2018
measureBlock: How Does Performance Testing Work In iOS?
Design your custom payment form with SqPaymentForm
Customize your payment form using Square’s SqPaymentForm and some CSS.
Thu May 24 2018
Are hotdogs a sandwich?
And other important naming conversations.
Tue May 15 2018
Ruby’s New Exception Keyword Arguments
Thu May 03 2018
New Class Naming Rules in Ruby
There were 26 valid characters.
Mon Apr 23 2018
Migrating to Warmer Times Ahead
Caviar’s consumer web frontend architecture has changed a lot over the years.
Fri Apr 20 2018
Ruby’s New Infinite Range Syntax: (0..)
This Christmas, Ruby 2.
Thu Apr 12 2018
Lightning Talks: A Tour of Duty at the U.S. Digital Service
Every month, Square Engineers give lightning talks internally.
Wed Mar 28 2018
Ember and Yarn Workspaces
Wed Mar 07 2018
How To Be a More Influential Engineer
Spoiler alert: you need skills.
Thu Mar 01 2018
Understanding Composition Browser Events
Tue Feb 27 2018
Lightning Talks: How to Create and Deliver a Successful Tech Talk
Mon Feb 26 2018
You Are Your Own Best Hype Person
Learn how to accurately and effectively advocate for yourself and grow in your career by recording your accomplishments.
Wed Feb 14 2018
Ruby’s New JIT
Tue Jan 30 2018
Lightning Talks: Let’s build a Markdown parser!
Tue Jan 16 2018
Soft-skills Reading List
As an engineering manager here at Square, I am often asked by engineers and other managers for advice on all sorts of different topics.
Tue Nov 14 2017
Updating from FactoryGirl to FactoryBot
On October 24th, 2017 the ThoughtBot team renamed their popular Ruby testing library FactoryGirl to FactoryBot.
Wed Oct 11 2017
Keeping the Daggers Sharp
Dagger 2 is a great dependency injection library, but its sharp edges can be tricky to handle.
Thu Sep 28 2017
Tips From a GHC Vet
This will be my sixth year attending Grace Hopper.
Wed Sep 13 2017
Autoscaling based on request queuing
Modern web development often includes traffic-heavy web applications and APIs.
Tue Sep 12 2017
The Ember Run Loop and Asynchronous Testing
Fri Aug 18 2017
Debugging a series of miscalculations in osquery
Tue Aug 15 2017
Live from Atlanta: Square Code Camp 2017
This week, Square’s Atlanta Office welcomes 13 college-aged women pursuing careers in engineering.
Tue Aug 01 2017
Square WomEng Hear + Now Tech Talks: July 2017
Lightning talks on the theme “Nerd Out Loud.
Thu Jul 13 2017
Surfacing Hidden Change to Pull Requests
Programming frequently deals in visible changes.
Tue Jul 11 2017
Always Be Closing
Thu Jul 06 2017
Introducing Paralayout
From the Cash team at Square, a new iOS open-source project that makes UI development quick, easy, and pixel-perfect.
Mon Jun 26 2017
Leadership, Management, and Tribes
There are a lot of great books about leadership and management.
Wed Jun 21 2017
Faster App Recovery With Bounded Queues
Mon Jun 12 2017
RRULE expansion in Ruby
Thu Jun 08 2017
Five Ways to Make the Most of Your Internship
Wed May 24 2017
Code Camp Takes Atlanta
Square’s immersion program aims to inspire future engineers and further their pursuit of a career in computer science.
Tue May 16 2017
Generating Kotlin code with KotlinPoet
Java code generation has become a popular solution to simplifying library code.
Mon May 15 2017
Kotlin’s a great language for JSON
Sun May 14 2017
An Optional’s place in Kotlin
Sat May 13 2017
Non-null is the Default
Fri May 12 2017
Rolling out @Nullable
Square Open Source ♥s Kotlin
Improving the developer experience of Square’s libraries in Kotlin.
Tue Apr 18 2017
How Square writes commit messages
Explain the change.
Mon Mar 27 2017
Moshi, another JSON Processor
It’s rare for a programmer to get to work on the same problem twice.
Anatomy of an HAProxy <-> Java TLS bug
Adding SSL health checks to HAProxy uncovered an interesting interaction with Java servers.
Fri Mar 17 2017
Incident Summary: 2017–03–16
Wed Mar 01 2017
Square at WeCode Harvard
Empowerment, enthusiasm, and inspiration at the “Grace Hopper of the Northeast”.
Mon Feb 20 2017
Product managing an integrated hardware product at Square
Fri Jan 06 2017
The traits you need as a Product Manager that you won’t find in job descriptions
You’ve read the job descriptions, familiarized yourself with the responsibilities, and understand where PMs fit in at a company.
Fri Dec 09 2016
Looking Back on the Grace Hopper Celebration
This fall, 25 Squares attended The Grace Hopper Celebration of Women in Computing (GHC).
Fri Dec 02 2016
Web Sockets now shipping in OkHttp 3.5!
Stream fully bi-directional messages between your client and server.
Thu Nov 10 2016
New York Tech Talk Videos
Recently, Ron Shapiro and David P.
Inclusion up and to the right: how we’re improving Hear + Now tech talks
Wed Nov 09 2016
Advice from the Insider: Landing Your Dream Engineering Job
This blog post originated from a presentation originally given by Alyssa Pohahau at Barnard College.
Wed Nov 02 2016
No Cause for Concern — RxJava and Retrofit Throwing a Tantrum
Last week, we found an interesting API design issue in the Throwable class of the JDK that led to bugs in RxJava and Retrofit.
Sun Oct 02 2016
Low Power Mode: Managing Your Emotional and Creative Energy
Slides and speaker notes from a talk originally given at AlterConf in Portland on October 1, 2016.
Tue Sep 20 2016
Android leak pattern: subscriptions in views
Thu Sep 15 2016
Announcing the Vendor Security Alliance
At Square, we protect data like our business depends on it — because it does.
Wed Sep 14 2016
A Brief Guide to Square’s Product Manager Intern Program
Two weeks ago was my last day as a Product Manager intern at Square.
Tue Sep 13 2016
Empowering Businesses: What It’s Like to Intern at Square
Square is focused on economic empowerment and making commerce easy.
Becoming a Well-Rounded Square
Wed Aug 31 2016
Optimizing Ember Templates
Templates make up 60% of your Ember app.
Mon Aug 22 2016
gRPC reaches 1.0
Last year, in collaboration with Google, we introduced gRPC to the world.
Wed Aug 10 2016
About Square Engineering
Square began with a simple idea: everyone should be able to accept credit cards.
Stay Connected
Square.
Careers
Building the future of commerce.
Tue Aug 09 2016
Upgrading a Reverse Proxy from Netty 3 to 4
Tracon is our reverse HTTP proxy powered by Netty.
Tue Jul 26 2016
Square WomEng Hear + Now Tech Talks: June 2016
Lightning talks by women engineers on the theme “How to _____? 10 Minute Guides to Get You Started.
Sun Jun 19 2016
Valet Beats the OS X Keychain Access Control List Zero-Day Vulnerability
Wed Jun 15 2016
SuperDelegate: The Better App Delegate
A Swift framework that provides a consistent and bug-free App Delegate API across all iOS SDKs.
Tue Jun 14 2016
Introducing Cleanse: A Lightweight Dependency Injection Framework For Swift
Cleanse is a pure Swift dependency injection library.
Mon Jun 13 2016
Caviar iOS: Migrating from AdvancedCollectionView to PJFDataSource
Behind-the-scenes look at the evolution of PJFDataSource in our Caviar iOS app.
Tue Jun 07 2016
XCKnife: faster distributed tests for iOS
Thu May 19 2016
Content Security Policy for Single Page Web Apps
Deploying comprehensive CSP that supports template bootstrapping.
Mon May 02 2016
Tailoring Pants for Square
The Pants build system announced a 1.
Wed Apr 27 2016
iOS 9 upgrade: Why did my unit tests grind to a halt?
An investigation into why upgrading from iOS 8 to 9 SDK led to slow tests.
Fri Apr 15 2016
Shift — Safe and Easy Database Migrations
A service that helps you run online schema migrations for MySQL databases.
Wed Apr 13 2016
pair, a git author tool
Simplifying authorship in pair programming.
Fri Apr 08 2016
Android Spring Cleaning Tech Talks
Mon Mar 14 2016
Framed Data Team Joins Square
Written by Jacqueline Reses.
Fri Mar 11 2016
Vulnerability in OkHttp’s Certificate Pinner
Thu Mar 03 2016
The Journey of Android Engineers: Tech Talks
Lightning talks and panel discussion videos.
Wed Feb 03 2016
Open sourcing Square’s WomEng Handbook
Everything you need to start, or expand, a Women in Engineering group in your community.
Wed Jan 27 2016
Query Sniper
Controlling runaway queries.
Tue Jan 26 2016
Square Presents: The Journey of Android Engineers
Lightning talks and panel discussion with expert Android engineers from Square, Udemy, and Highlight.
Tue Jan 19 2016
Shared App Functionality via JavaScript
How we created a flexible way to view Square Cash payments offline.
Wed Jan 13 2016
Breaking up with your MonoRail
Planning an extraction from a monolithic Rails app.
Fri Dec 18 2015
Ziggurat iOS App Architecture
Mon Dec 14 2015
Ace the Square pairing interview
What to expect and how to succeed.
Wed Dec 09 2015
Welcome to the (Color) Matrix
Combining Picasso with color matrices to transform images.
Mon Nov 30 2015
Enabling Android Teams Tech Talks
Mon Nov 23 2015
Optimizing ruby-protobuf deserialization by 50%
Mon Nov 16 2015
Introducing git fastclone
How to make your clones go by much faster.
Wed Oct 28 2015
Even Better Protocol Buffers With Wire 2
The new Wire release can shrink your schema.
Tue Oct 27 2015
A Short Guide to Kernel Debugging
Thu Oct 22 2015
Square Presents: Enabling Android Teams
Wed Oct 07 2015
Applications now open: College Code Camp 6
Wed Sep 09 2015
FieldKit: A Simple Library for Complex Input Formatting
Real-time, input text field formatting as a user types.
Thu Sep 03 2015
Square Atlanta is growing
Mon Aug 24 2015
Streamlining Android Apps Tech Talks
Presentations on eliminating code overhead and LeakCanary.
Thu Aug 20 2015
A small leak will sink a great ship
Prior to Android Lollipop, alert dialogs may cause memory leaks in your Android apps.
Tue Jul 28 2015
iOS Build Infrastructure
Thu Jul 23 2015
Tech Talks — A Peek Into iOS Engineering at Square
Mon Jul 20 2015
Dude, Where’s My char[]?
Looking for String.
Fri Jul 10 2015
Application visibility
A sneak peek into various monitoring and alerting systems used at Square.
Fri Jun 19 2015
Stricter Tests for Expectations Set on Nil in RSpec
Make your RSpec tests fail when expectations are set on nil.
Mon Jun 15 2015
Building Portable Binaries
Mon Jun 08 2015
Square Presents: Streamlining Android Apps
Fri Jun 05 2015
Dependency Injection: Give Your iOS Code a Shot in the Arm
Applying the dependency injection design pattern to Objective-C or Swift codebases.
Thu Jun 04 2015
Valet: A Better Place to Put Your Keys
Store your secrets securely without ever reading Apple’s SecItem.
Wed Jun 03 2015
[ Space Commader]: Take Command of Objective-C Whitespace
A set of tools for teams to setup, customize, and enforce Objective-C formatting.
Tue Jun 02 2015
Aardvark: Your Logs Slurped, Your Bugs Licked
Mon Jun 01 2015
Build Stability
A Week of iOS
Tue May 26 2015
OkHttp’s New URL Class
Java URLs are painful.
Mon May 11 2015
Open Source Security Bug Bounty
Fri May 08 2015
LeakCanary: Detect all memory leaks!
A memory leak detection library for Android and Java.
Tue Apr 14 2015
Protecting infrastructure secrets with Keywhiz
Mon Apr 06 2015
Our Fifth College Code Camp
And a look back at College Code Camp no.
Thu Mar 26 2015
Scaling Square Register
Learn about Register iOS development processes and tooling.
Thu Feb 26 2015
gRPC — cross-platform open source RPC over HTTP/2
Wed Feb 25 2015
SQLBrite: A reactive Database Foundation
RxJava-based wrapper around SQLite for Android.
Mon Feb 09 2015
Our New High School Code Camp
Thu Jan 29 2015
Introducing JavaPoet
Square has a new library for generating Java code.
Tue Jan 27 2015
Open Source Code of Conduct
Our open source code of conduct reflects our expectations for ourselves and our community.
Announcing: Our Open Source Code of Conduct
Mon Jan 12 2015
Everything I wish I didn’t know about concurrency
Fri Nov 21 2014
Anders Hejlsberg Tech Talk on Typescript
Fri Nov 07 2014
Human Botnet Part 1
Scaling application security with metrics and automation.
Wed Oct 22 2014
Learning Ruby
Tue Oct 21 2014
Better Parameterized Tests with Burst
An alternate data variation mechanism for JUnit tests.
Mon Oct 13 2014
Welcome to Square! Let’s Learn D3!
Our internal tutorial for learning D3.
Fri Oct 10 2014
Our Fourth College Code Camp
The impact of supporting women in technology.
Wed Oct 08 2014
Advocating Against Android Fragments
Alternatives for dealing with (painful) Android fragments.
Fri Sep 26 2014
A Pair of Android Tech Talks
Presentations on annotation processing and dealing with HTTP.
Mon Sep 22 2014
Logging can be tricky
Debugging Go application latency with strace.
Tue Sep 16 2014
Trying on Pants
With many Java projects in a single repo, we are trying out the Pants build system.
Mon Sep 15 2014
//TODO: Talk Openly, Develop Openly
Fri Sep 05 2014
Sqrome, a Chrome extension
Tackling a different kind of scaling problem.
Mon Aug 25 2014
College Code Camp III
An initiative for young women in STEM.
Fri Aug 08 2014
A Summer of Kochiku
Kochiku is getting plenty of attention from the new CII team.
Thu Aug 07 2014
Even More Advanced Interactive Menus
Wed Aug 06 2014
Square’s Security Bug Bounty
Wed Jul 09 2014
Advanced Embedding with Square Market
Ember an interactive menu into your website using Square Market.
Mon Jun 23 2014
OkHttp 2.0
Square’s HTTP client for Android and Java has a new API.
Wed Jun 18 2014
Generating Thumbor URLs on iOS
Faster image loading, better caching, easy.
Tue Jun 17 2014
Square and Girls Who Code
Fri Jun 13 2014
iOS Lightning Talk: Register Architecture
From Square’s WWDC reception on June 2nd, 2014.
iOS Lightning Talk: Open Source Tour
Fri Jun 06 2014
One Year Later
Fri May 30 2014
Hello Picasso 2.3
Sun May 25 2014
Ruby, Serialization, and Enumeration
In which a curious backtrace uncovers scandalous truths about ActiveSupport and Ruby’s IO object.
Thu May 22 2014
A Comparison of Go Web Frameworks
We’re evaluating each popular Go framework to see which is the best fit for us.
Tue May 06 2014
Connection goes down, business stays up
Mon May 05 2014
Open Sourcing Viewfinder
More than 250,000 lines of code released.
Wed Apr 30 2014
A Square Deal for Women
A College Code Camp participant shares her experience as a women in STEM.
Wed Apr 09 2014
Buffering data with Okio
The motivation behind our new I/O library.
Tue Apr 08 2014
Square Cash introduces Activity View
View all of your Square Cash activity in one, easy-to-read convesational-style feed.
Mon Mar 31 2014
Square Market Accepts Bitcoin
Wed Feb 26 2014
BookFresh joins Square
Wed Feb 19 2014
Eliminating stringly-typed code in Objective-C
Sometimes, you just have to meet your tools halfway.
Fri Feb 14 2014
Faster RSA in Java with GMP
Fri Jan 31 2014
An announcement of almost incalculable value
Some dinosaurs are better than others.
Tue Jan 28 2014
Campfire Camaraderie
What I learned from spending four days with 20 women @Square Code Camp.
Fri Jan 24 2014
Meet Jake
An Android engineer working on a super-secret project.
Thu Jan 23 2014
Simpler Android apps with Flow and Mortar
Bust up your app into tidy little modules with these two libraries.
Wed Jan 22 2014
Android String Formatting with Phrase
Avoid translation mistakes with this simple Android text formatting library.
Tue Jan 21 2014
Square From the Trenches, Month One
A new engineer’s first month experience.
Mon Jan 20 2014
Dynamic Images with Thumbor
Reduce memory, bandwidth, and disk usage.
Fri Jan 17 2014
Capture The Flag
A Square/Matasano firmware challenge.
Thu Dec 26 2013
A journey on the Android Main Thread — Lifecycle bits
Written by Pierre-Yves Ricau.
Thu Dec 19 2013
Let it snow!
Square Cash makes gift giving a little more festive.
Wed Dec 11 2013
Evenly Joins Square
Working together to provide a beautiful and seamless payment experience.
Tue Dec 10 2013
Securing RubyGems with TUF, Part 3
Applying The Update Framework (TUF) to RubyGems to secure it against nefarious activity.
Mon Dec 09 2013
Securing RubyGems with TUF, Part 2
Fri Dec 06 2013
Securing RubyGems with TUF, Part 1
Wed Dec 04 2013
Pair Programming Interviews, Part II
Tue Dec 03 2013
Viewfinder Joins Square
Growing our NYC engineering presence with the Viewfinder team.
Thu Nov 21 2013
Culture Fit
Wed Oct 30 2013
A journey on the Android Main Thread — PSVM
Tue Oct 29 2013
Shuttle: Powerful cross-platform localization
Shuttle takes the pain out of internationalization by giving you an end-to-end translation toolchain.
Wed Oct 23 2013
Parliament: A Threshold Secret Sharing Service
Making it easy to protect high-value secrets.
Wed Oct 09 2013
Hardware at Square
Our philosophy of hardware design and production.
Mon Oct 07 2013
How to win at career fairs
The themes that stand out after meeting and reviewing résumés from hundreds of students.
Tue Oct 01 2013
Square’s Open Approach to Code
A quarter of a million lines of code later.
Thu Sep 26 2013
The @Square Tweetwriter
The story of a new inforad created during our last Hack Week.
Wed Sep 11 2013
Pair Programming Interviews
Fri Sep 06 2013
Kochiku: CI for long test suites
Wed Sep 04 2013
Square’s Code Camp for High School and College Women Engineering Students
A past participant (and Square convert!)’s experiences with Square’s programs for women in tech.
Wed Aug 28 2013
Fly Vim, First-Class
A Vim starter kit for OS X.
Mon Aug 26 2013
LGTM: A Validation Library for JavaScript
Simple asynchronous object validation for node.
Fri Aug 23 2013
Introducing Wire Protocol Buffers
A new, lightweight implementation of Protocol Buffers for Android.
Thu Aug 22 2013
Bluetooth Printing Support for iPad
Wed Aug 21 2013
Responsive Images with Apropos
A simple way to serve up appropriate images for every visitor.
Tue Aug 06 2013
Small Grunts
Learn the very basics for using Grunt with your Javascript.
Thu Aug 01 2013
Reversing Bits in C
A small performance investigation into innocent-looking code.
Thu Jul 11 2013
Rack Servlet
Embed Rack applications in your Java service.
Tue Jul 02 2013
Maven, Gems, and a JRuby Console for All
Fri Jun 28 2013
The Ruby Sequel ORM on the Hibernate Connection Pool
We will demonstrate how to unify access to your database by leveraging the same connection in Java and JRuby.
Thu Jun 27 2013
Using Java Protocol Buffers in JRuby
Square communicates between services using Protocol Buffers.
Wed Jun 26 2013
Guice for the Rubyist
A little about our infrastructure and some code to showcase integration with Guice for Ruby.
Tue Jun 25 2013
JRuby at Square
The first of a series of posts highlighting discoveries and insights found while integrating Ruby with our robust Java stack.
Tue May 28 2013
Replacing Google Authenticator with Yubikey on OS X
Two-factor authentication made even easier.
Tue May 14 2013
Enhance Your Application Using Picasso
A fluent image downloading and caching library for Android.
Mon May 13 2013
Square at Google I/O Developer Sandbox
Easy HTTP Requests with Retrofit
A declarative, type-safe REST client.
Fri May 10 2013
Boost Your Productivity with IntelliJ Plugins
Plugins to complement Dagger and Otto.
Thu May 09 2013
Better Android Testing with Robolectric 2.0
Wed May 08 2013
MimeCraft, JavaWriter, and ProtoParser
Small and focused libraries doing one task well.
Tue May 07 2013
Slash Your Wiring Code With Dagger
Why we created a new dependency injector for Android.
Mon May 06 2013
Announcing OkHttp
Square’s new HTTP client for Android and Java.
Seven Days of Open Source
Releasing major milestones of our open source projects.
Thu May 02 2013
What’s It Like To Work At A Startup
Square’s own Engineering Manager Zach Brock recently participated in a live webcast entitled Startup Life.
Wed Apr 24 2013
Inside a Square Inforad
A dive into the information radiators in use at Square.
Tue Apr 09 2013
Run All Projects Like Open Source Projects
You can move faster when other people can contribute to your projects and unblock themselves.
Wed Apr 03 2013
The Resurrection of Testing for Android
An oft-overlooked aspect of development gets a fresh look.
Mon Mar 25 2013
Java Puzzle: Square Root — Solution
Show your Java-fu by calculating the unknown.
Wed Mar 20 2013
Making TimesSquare fast on iOS
Showing a calendar is easy.
Tue Mar 19 2013
Java Puzzle: Square Root
Mon Mar 18 2013
Announcing Square’s Open Source Portal
A central listing of our open source projects.
Thu Mar 14 2013
Driving Analysis by Managing Data with ETL (a Ruby gem!)
A look at a Ruby gem that Square’s Business Intelligence team wrote to facilitate ETLs.
Mon Mar 11 2013
Mapping Square Payments During the Super Bowl
Building on open tools and data to share our payments story under a tight deadline.
Wed Mar 06 2013
Hacking Up the Odominator
A look at what a few of our engineers did last Hack Week.
Fri Feb 15 2013
ES6 Module Transpiler — Tomorrow’s JavaScript module syntax today
Using the draft ES6 module syntax in today’s frameworks and applications.
Thu Jan 31 2013
TimesSquare: a calendar view for iOS and Android apps
A fast, customizable calendar component with full internationalization support.
Fri Jan 18 2013
Transparency with JPEGs
Combining the compression of JPEGs and the transparency of PNGs for a 90% compression gain.
Wed Jan 16 2013
Introducing Squash: The open-source exception notification tool
Squash makes it easier to find and fix your bugs by providing advanced notification and analysis tools.
Mon Oct 22 2012
Mockito on Android
Unit testing Android apps with Mockito and DexMaker.
Thu Oct 11 2012
Intern Profile — Kingston Tam
Thu Aug 30 2012
PonyDebugger: Remote Debugging Tools for Native iOS Apps
Remote network and data debugging with Chrome Developer Tools.
Mon Aug 27 2012
Pump: A Faster Way To Write Cascading Flows
Check out the new helper we’ve released to cut down on the verbosity of Cascading Flows.
Mon Aug 06 2012
Chasing a Cunning Android bug
Tracking down a deep Android bug.
Mon Jul 23 2012
4 Questions with Madelin Woords
An exciting interview with Square Front-End Engineer Madelin Woods.
Fri Jul 20 2012
Smoother Signatures
Capturing even more beautiful signatures on Android.
Welcome Atlanta Squares
This week, we welcomed a group of talented engineers who will be based in Atlanta.
Mon Jul 02 2012
Decoupling Android App Communication with Otto
An enhanced Guava-based event bus with emphasis on Android support.
Tue Jun 19 2012
fdoc: an API Documentation Tool
How we maintain consistent API documentation.
Fri Jun 01 2012
5 Questions with Eric Burke
An exciting interview with Square Android Engineer Eric Burke.
Tue May 15 2012
Using ActionBarSherlock As A Base
Why adding ActionBarSherlock to your applications early will save developer time in the future.
Mon May 14 2012
Monitoring Resque with Graphite
Improve the observability of asynchronous jobs by recording and visualizing behavior over time.
Wed Apr 04 2012
Ember and D3: Building responsive analytics
How we bult our web analytics panel with Ember and D3.
Mon Feb 13 2012
Cane: failing your build for code quality problems
A new gem for Ruby 1.
Tue Feb 07 2012
Introducing SocketRocket: A WebSocket library for Objective-C
Mon Nov 14 2011
Coding Challenge: The Luhny Bin
Fri Nov 04 2011
iOS Integration Testing, Part 2
A continuous integration server for running your tests on every commit.
Wed Oct 05 2011
Why We Pair Interview
An overview of our pairing interviews and why they’re awesome.
Fri Sep 30 2011
Sass Why for the CSS Guy
An intro to Sass and Compass for CSS fans.
Thu Sep 29 2011
Square Codenames
A quick survey of Square codenames.
Thu Sep 15 2011
Cube: Time Series Visualization
Announcing an open-source system for visualizing time series data, built with MongoDB, Node, and D3.
Thu Jul 14 2011
iOS Integration Testing
A framework for integration testing iOS by simulating user interaction.
Wed Jul 06 2011
Yes, Redis cares about your load balancing strategy
Innocuous details like load balancing web servers can produce downstream results in hard to predict ways.
Tue Jul 05 2011
BorderPatrol: KML border checking in Ruby
Presenting a gem to import KML files and detect whether or not points are contained within defined regions.
Mon Jun 06 2011
PostgreSQL: Data is Important
A case for PostgreSQL in a modern web architecture.
Thu Mar 17 2011
Fsync or Swim Part 1: Error Handling
Thu Oct 14 2010
Testing Named Scopes
Mon Aug 16 2010
Integration Testing Resque with Cucumber
Tue Jul 27 2010
Smooth Signatures