Posts by Evernote

Announcing Serge 1.3

Those who have read Evernote Tech Blog in the past may already know what Serge is. It is an open-source tool that we developed to continuously localize all Evernote clients and marketing materials into 25+ languages. Today, we’re marking a new release which accumulates numerous improvements across the board. If your team is seeking for ways to optimize localization process and free developers from a repetitive work of exporting resources

Continue reading…

10 Reasons to Love Web Clipper

Some things just go together. Peanut butter and jelly. Time and tide. Abbott and Costello. Web Clipper and Evernote. Adding the Web Clipper extension to your browser makes Evernote a more powerful and essential part of your day. Here’s why: 1) So quick, it’s kinda like cheating – If I think an article or piece of inspiration will come in handy one day, Web Clipper lets me make it mine.

Continue reading…

Announcing android-job library 1.2.0

Scheduling background jobs on Android is a headache. Not only has Google introduced quite a few APIs over the years, but they’ve also changed their behavior. It’s difficult as a developer to pick the correct framework and to implement all necessary classes properly. In order to use all features from newer APIs and to support older devices at the same time, you need to write a lot of boilerplate code.

Continue reading…

We Rebuilt Evernote for iOS in Swift

By 2016, the developers of Evernote for iOS were struggling to add new features to the app, keep it working with new versions of iOS, and untangle technical debt in the code. To fix this, we began an effort that ultimately produced an app with a new design, a new user interface, and a new software architecture—all delivered by a mostly new team. Why rebuild? The previous version of Evernote

Continue reading…

Part 5 – Conclusion and Future

This is the final post in a 5-part series on Evernote’s transition to Google Cloud Platform (GCP). To read this series from the beginning, see Part 1. All of the planning and processes explored in parts 1-4 of this series got us ready to build the next generation of Evernote. So how were we able to achieve the migration so quickly? Ruthless Focus In order to stand any chance of

Continue reading…

Part 4 – Planning and Executing the Migration

This is Part 4 of a 5-part series on Evernote’s transition to Google Cloud Platform (GCP). To read this series from the beginning, see Part 1. In planning the migration of the Evernote service, we wanted to minimize user downtime wherever possible, but also knew our existing architecture would not support a zero-downtime migration. We had the following requirements as inputs when planning the migration methodology and maintenance windows: We

Continue reading…

Part 3 – The Evernote Architecture in GCP and our Technical Transformation

This is Part 3 of a 5-part series on Evernote’s transition to Google Cloud Platform (GCP). To read this series from the beginning, see Part 1. Our System Architecture Our next big decision was to agree on the overall system architecture we would be building towards. We agreed that the following were important requirements/considerations: The Evernote application was architected for all services to run out of a single datacenter site

Continue reading…

Part 2 – Protecting Customer Data on GCP

This is Part 2 of a 5-part series on Evernote’s transition to Google Cloud Platform (GCP). To read this series from the beginning, see Part 1. Our security team’s charter is to protect customer data. When we started the project to move to a cloud infrastructure, and Google specifically, we started work in parallel to understand how to keep customer data secure as we migrated into GCP. We focused on

Continue reading…

Part 1 – The Evernote Service and our options to migrate to Google Cloud Platform (GCP)

Since inception of the service in 2008, Evernote has owned, configured, and maintained its own servers and network. This approach gave us the ability to build the service we wanted the way we wanted to build it. But it was also limiting – difficult to scale, slow to upgrade and expensive to maintain. While the infrastructure we had was well suited to support Evernote at the time, it lacked the

Continue reading…

Android-State Library

We at Evernote believe in open source. That’s why we frequently release and contribute to open source projects like Serge, our continuous localization solution, and Android-Job, an Android library to easily handle background jobs. We’re not only giving back some of our work, but we’re also using a couple of open source projects in our own products. One we rely on heavily is Icepick from Frankie Sardo. Icepick is described as “an

Continue reading…

  • 1 2 5