Hi All,

Before we get too far into all the exciting new opportunities that 2018 has
to offer, I wanted to take a moment to reflect on our achievements with
Firefox Accounts over the previous year.

Our first deploy of 2017 was FxA train-77, and we closed the year by
deploying train-102.  That's 25 trains worth of goodness, with far too many
features and fixes and improvements for me to cover in detail here.  But
after going back through 25 "What's New in FxA" emails, these were some of
the highlights for 2017:


Connect another device:

We focussed heavily on getting users to "connect another device" after
creating their Firefox Account, since this has proven to be a good
indicator of user retention.  We shipped a variety of post-verification
landing pages, worked with the Lifecycle Marketing team on email campaigns,
added the ability to SMS yourself an install link, figured out how to
deep-link to the sign-in form, and even prototyped a QR-code-based pairing
flow.

At the start of year, only around 8% of new account holders would connect a
second device in their first seven days after registration.  Through a lot
of experimentation, iteration, polish and plain old hard work, we managed
to double that number over the course of 2017.  This incredibly satisfying
graph shows the rate now sitting comfortably at 16%:

 https://sql.telemetry.mozilla.org/queries/50227/source#134907


Change primary email:

Early in 2017 we decided it was time to bite the bullet and ship a complex
but important feature: the ability to change the primary email address on
your account.  We had heard from too many users who had lost access to
their original email address for one reason or another, which forced them
into creating a brand new Firefox Account.

We expected this to be a big refactor, but I'm not sure we were prepared
for just how big it would turn out to be, touching everything from desktop
sync data storage to our core security model to our session verification
infrastructure.  Nonetheless, we pushed through and have a working
implementation ready for general release, with rollout planned for this
month.


Going Faster:

We invested a lot of effort in our test and deployment infrastructure this
year, with the explicit aim of improving our ability to iterate on
experiments and learn from real user feedback.  We migrated our deployment
infrastructure to Dockerflow, which improved turnaround time for prod,
stage and dev deploys.  We added CI hooks to automatically deploy feature
branches to a dev environment for easy testing.  We got comfortable rolling
out new work behind feature-flags, and cutting point releases to support
it.  And we vastly improved the stability and speed of our test suites.

Early in 2017 Alex put the challenge that we should be able to run one A/B
test per week, and at the time it seemed wildly ambitious.  But we've since
used these new capabilities to ship and iterate on experiments around
confirming your password on account creation, adjusting the visual state of
form buttons, and guiding the user to the appropriate form by asking for
their email up-front.  We've got more to do, but running an A/B test every
week doesn't seem quite so outlandish anymore.


Metrics:

The only way to go faster with any degree of confidence is to measure faster,
so hand-in-hand with our deployment pipeline changes, we invested heavily
in our metrics infrastructure over the past year.  Our re:dash charts can
now explicitly query against experiment cohorts, and they include new
metrics for application performance and for email deliverability.  We
prototyped and rolled out a brand new metrics integration with Amplitude,
which has dramatically improved the speed with which we can turn around
ad-hoc metrics queries.  I don't think I will ever forget the sheer joy of
watching the success of the Firefox Quantum release roll in in real-time in
our account creation metrics!

We have also started running a regular Shield survey to directly understand
user satisfaction.  The results so far have fluctuated around 4.5/5 stars,
exceeding our initial expectations.

As usual, new metrics have highlighted new areas for improvement, and
that's been especially true for our performance-related metrics.  I'm
looking forward to the ability to be more deliberate about application
performance in 2018.


Quality Backlogs:

It's hard to put a name to this, and weird to call out "quality" as a
top-level work item; after all, aren't we always supposed to care about
product quality?  But 2017 saw us make deliberate efforts to focus on
product quality, using explicit "bug backlog" milestones to fit ongoing
quality work into our planning process.  Some successful quality-driven
backlog themes from 2017 included:


   -

   The "crouton flow" backlog, which helped us focus on high-impact UX
   quality bugs in the leadup to the Firefox Quantum release.
   -

   The mobile quality backlog, which helped us collaborate with the iOS
   team to improve the signin experience and bring more account management
   features to that platform.
   -

   The email-deliverability work, which helped us to measure and understand
   our delivery rate across major email providers, and let us fix a persistent
   issue with Outlook flagging our emails as spam.
   -

   The device-manager work, which helped us provide users with much more
   visibility into the activity on their account.



Emojifying Device Names:

When you describe it as "support emoji in sync device names" it doesn't
sound like much, but geez…!  This simple-sounding feature proved to be
quite an adventure in the intricacies of utf8-handling in MySQL, and led to
us revisiting the way all our database migrations are done.  As a result,
we now have the tools and the confidence to approach some other thorny
database migrations that were previously put in the "too hard" basket.


Encryption Keys for OAuth Reliers:

The Firefox Accounts project started life with a single consumer and a
singular focus: to provide Firefox Sync with a great login experience while
provisioning secure encryption keys.  In 2017 we laid the groundwork for
expanding this service to a diverse ecosystem of other consumers, working
with the Lockbox and Notes teams to design a protocol for per-application
encryption keys backed by the same great FxA login experience.


Meta:

Finally, we invested a lot in meta-level process work over the course of
2017.  We welcomed a new Engineering Program Manager in Julie, who quickly
became an integral part of the team.  We experimented with different ways
to do OKR checkins and retrospectives, and have settled into a regular
rhythm that helps us focus and prioritize our work.  We relentlessly
refactored our "feature doc" process to ensure alignment between
engineering, product, UX and QA while avoiding pointless busywork.  And we
tried out some collaborative strategy planning with the "playing to win"
framework, to come up with a shared vision for 2018 and beyond.


Thank you all for a fantastic year!  I'm very excited about building on
this work with all the possibilities that 2018 has to offer.  But that's
for a separate email…


 Cheers,

    Ryan
_______________________________________________
Dev-fxacct mailing list
[email protected]
https://mail.mozilla.org/listinfo/dev-fxacct

Reply via email to