The Curious Engineer

All blogs / Software / engineering practice

Engineering Blog

eng.wealthfront.com

Software / engineering practiceDevOps / SRE / infrastructureTesting / QAMobile / iOS / AndroidDatabasesEngineering blogs

Posts
324 from 11 Oct 2009 to 5 Oct 2026
Posting
monthly (12 in the last year)
Kind
company blog
Feed
https://eng.wealthfront.com/feed/

2026 9

  1. Unsupervised Topic Discovery with Text Embeddings
  2. Optimizing Redshift Write Patterns: Tackling Tombstones and Ghost Rows
  3. Experiments with AI Code Review
  4. 7 Words, 7 Journeys: The Wealthfront New College Grad Experience
  5. Tuning Android build nodes for maximum throughput
  6. Putting the Tech in Fintech: How We Use FIX to Execute Trades at Scale
  7. How we standardized MariaDB in our Integration Server
  8. XcodeGen and the quest to modularize the Wealthfront iOS app
  9. New Leaders, New Perspectives: Why We Joined Wealthfront Engineering

2025 14

  1. The Hidden Cost of Convenience: Rethinking Old ORM Patterns for Scale
  2. Automating Exhaustive Branch Coverage for Sealed Types in Kotlin
  3. ValidUntil: Ensuring compile-time data integrity in our investing system
  4. Shipping Containers: How We Built an Easy to Use Jenkins Pipeline for ECR
  5. Going Edge-to-Edge: How Android SDK 35 Modernizes the Wealthfront App
  6. How I Wrote Code That Allocates Cash Account Interest Daily as a Wealthfront Intern
  7. Speed up your Android Tests Part 2: End to End Test Filtering
  8. How We Standardized Our Lambda Deployments
  9. Unlocking Your Potential: Join the New College Graduate Class at Wealthfront and Set Your Career on a Thriving Path!
  10. In a Snap! Turbo-charging Our Database Backups
  11. H2 Framework: How We Test Our Automated Investing Infrastructure
  12. Our Journey to Building a Scalable SQL Testing Library for Athena
  13. How 40 Lines of Code Sped Up iOS End to End Tests by over 50%
  14. From Overnight to Over Lunch: Moving Terabytes of Data At 10 Gigabits per Second

2024 7

  1. How we updated our Performance Review process to help engineers grow
  2. Speed Up Your Android Tests: Gradle Plugin for Unit Test Filtering
  3. Revamping Data Fetching Patterns on the Web Platform
  4. Team Crafting using a Team Depth Chart
  5. Senior Engineer Archetypes
  6. Principles of Engineering Culture at Wealthfront
  7. Navigating the Monorepo Tooling Landscape:Wealthfront’s Journey

2023 6

  1. Unifying Wealthfront’s Transfer Flows: An iOS Engineering Journey
  2. The Wealthfront Engineering Intern Program: not all internships are built the same…
  3. Streamlining Asynchronous Programming on Android
  4. Creating Android Lint Checks: A Survival Guide
  5. Optimizing Multi-table SQL Queries
  6. Creating Wealthfront Android Design System Resources Package

2022 8

  1. Implementing Event Tracking Infra with CDK
  2. Event Tracking System at Wealthfront
  3. Migrating the Wealthfront web app to TypeScript
  4. Designing a harness for readable, thorough Android tests
  5. Evolving Wealthfront’s Web tech stack
  6. How Bandit Testing Improves A/B Tests at Wealthfront
  7. Building Wealthfront’s multi-platform design system
  8. Retrying e2e test suites with Jest

2021 10

  1. Automating Data Quality Checks on External Data
  2. One-click Developer Login
  3. Migrating from Capybara to Puppeteer
  4. Refactoring Production Code
  5. Targeting Android SDK 30
  6. The Engineering Interview at Wealthfront
  7. Our Journey to a Generic Linking Platform
  8. Rolling Back an Airflow Upgrade
  9. Halving iOS Test Time with Partitioning in Jenkins Pipelines
  10. Upgrading to React 17: How to Fix the Issues and Breaking Changes

2020 7

  1. Espresso-friendly Bottom Sheet interactions
  2. Streamline development with Custom DevTools
  3. Building a truly accessible clickable div
  4. Visual Regression Testing on Android
  5. Android App Modularization at Wealthfront (Part 3)
  6. Android App Modularization at Wealthfront (Part 2)
  7. Android App Modularization at Wealthfront (Part 1)

2019 2

  1. Running in the Background: Building Seamless Account Linking
  2. My Ten-Character Win

2018 6

  1. Our Adventures in Scaling
  2. Testing Golang Services at Wealthfront
  3. Testing the GPS behind tomorrow’s self-driving money™️
  4. Continuous Deployment with Spark Streaming (Part II)
  5. Continuous Deployment with Spark Streaming (Part I)
  6. (Binary) Searching for your affordable home

2017 11

  1. Graceful Degradation in Spark Streaming Applications
  2. Testing D3 Transitions
  3. D3: You’re amazing just the way you are
  4. Reflecting on my summer internship at Wealthfront
  5. Building a Distributed Work Queue with MySQL and RabbitMQ
  6. A Wealthfront ACATS Odyssey
  7. Hey do you have the time?
  8. Tradeoffs in AB Testing Frameworks
  9. Scaling Beyond MySQL
  10. Introducing Our New Operating System
  11. Integrating D3 into React

2016 16

  1. A specific trick and a general habit for achieving fast computations
  2. Reflective Metatesting. Protecting You from Yourself and Everybody Else.
  3. Handling unhandledrejections in Node and the Browser
  4. Checkstyle at Wealthfront
  5. The Perils of Accidental Global Includes in Ruby
  6. How we use Mocha and jsdom with CoderPad for Frontend interviews
  7. Enforce REST API Standard with Swagger
  8. Consistent Test Setup Across Multiple Packages
  9. Intelligent Metrics Monitoring
  10. Tips for Unit Testing D3
  11. Integrating Apache Spark into your existing Hadoop system – Part I
  12. Connecting to an FTPS Server with SSL Session Reuse in Java 7 and 8
  13. How to Make Your Persistent Queues Run Faster Safely
  14. Identifying Non-Heap Class Leaks
  15. Building Mobile A/B Testing Infrastructure
  16. Build System Integration Testing with Chef

2015 13

  1. 3 Ways to Integrate Third-Party Metrics into Your Data Platform
  2. How We Avoid A/B Testing Errors with Shrinkage
  3. Testing JavaScript Modules
  4. Advice for the Transition from College to Industry
  5. Why We Use Bayesian Inference
  6. Unit Testing for Sass with Sassaby
  7. Testing with Optical Character Recognition (OCR)
  8. Performant CSS Animations: Netflix Case Study
  9. An Introduction to CommonJS
  10. Performant CSS Animations
  11. Similarities of Disruptive Companies
  12. Pattern matching in Java with the Visitor pattern
  13. WF-CRAN: R Package Management at Wealthfront

2014 26

  1. Security Notice on POODLE / CVE-2014-3513 / CVE-2014-3567
  2. Touch ID for Wealthfront App
  3. Security Notice on Shellshock / CVE-2014-6271 / CVE-2014-7169
  4. Small Files, Big Problem
  5. The Unanticipated Intern Experience
  6. iOS UI Testing
  7. Building and Testing a Custom UIDatePicker
  8. Summer Spent Learning and Experimenting
  9. Learning from Leaders
  10. Lessons Learned when Scaling our Data Analytics Platform
  11. Statistics Is Eating the World
  12. The Case for Object-Oriented JavaScript
  13. Writing JavaScript Tests for Asynchronous Events with Deferreds
  14. My Internship with Wealthfront
  15. Joining Wealthfront as a DevOps New Grad
  16. Security Notice on CCS / CVE-2014-0224
  17. My First Weeks at Wealthfront
  18. Marketside chats #5: Market making
  19. Automating JavaScript Code Quality Checks
  20. Security Notice on Heartbleed / CVE-2014-0160
  21. Tracking Down a Crash in iOS
  22. Unit testing -drawRect:
  23. Nuke the NPE in Java
  24. iOS Development at Wealthfront
  25. Marketside Chats #4: Costs of replicating an S&P 500 portfolio
  26. Career Planning for New Grad and Young Engineers

2013 29

  1. Marketside chats #3: More options for non-dummies
  2. Configuration… Hardcode it!
  3. How To Find a Great Engineering Culture
  4. DevOps at Wealthfront
  5. Worlds Collide
  6. Two Hour Change Leads to Three More Years.
  7. Wealthfront hosts October’s Femgineer Forum
  8. Engineering Display Hack Day
  9. Testing Cascading applications
  10. Marketside chats #2: Options for non-dummies
  11. Pushing a Feature On My First Day
  12. Mocking Java enums with jMock is both trivial and impossible
  13. Building your street cred — A career forum for women in tech hosted by Wealthfront
  14. Joining Wealthfront as a new college graduate
  15. Marketside chats #1: market vs limit orders
  16. Functional CSS (FCSS)
  17. ActiveJsonEntity and ActiveRecord’s shared DNA
  18. ActiveJsonEntity: Bridging the gap between Rails and Java
  19. Move cash faster
  20. The first week at Wealthfront
  21. I can haz lambda on Java 7?
  22. Reactive Charts with D3 and Reactive.js
  23. A “Reactive” 3D Game Engine in Excel?
  24. Reactive.js: Functional Reactive Programming in Javascript
  25. Not too late to sign up for Odersky’s Scala Coursera class
  26. Continuous Deployment: API Compatibility Verification
  27. Tame long tab titles with dynamically CSS-only scrolling
  28. Webkit’s -webkit-font-smoothing can make you fat
  29. My First Day

2012 19

  1. Quick-n-dirty: Font Awesome icon search utility
  2. Using Underscore.js’s debounce() to filter double-clicks
  3. jQuery.Deferred is the most important client-side tool you have
  4. On the humanity of mathematical models
  5. Hurricane Sandy puts YAGNI to the test
  6. Developing a Portfolio Backtester in R
  7. Building the Startup Compensation Visualization
  8. Explore Your Multivariate Data with Crossfilter
  9. Do They Really, Really Like You?
  10. Belt and Suspenders: Safety and Trust in a Distributed System
  11. Get thee to a nullery: self-aware nulls for testing
  12. Rating The April Fools’ Day Shenanigans
  13. Scrolling the Z-axis with CSS 3D Transforms
  14. Interesting Reads
  15. Taco Friday
  16. Boots-n-Cats: Every Techno Song Ever In Clojure
  17. Interesting Reads
  18. Visualize Facebook’s IPO prospectus
  19. Moneyball: Using Modern Portfolio Theory To Win Your Fantasy Sports League

2011 36

  1. Converting dynamic SVG to PNG with node.js, d3 and Imagemagick
  2. Our CEO Andy Rachleff talks about VC, entrepreneurship and Wealthfront at Dec 8th 7pm in SF Stanford Alum Club
  3. Beyond Java’s Access Control: the Visibility Test
  4. Interesting Reads
  5. Deploying With a Phone Call: Speech Recognition in a Java backend
  6. Siri for Continuous Deployment
  7. Happy Birthday, Wealthfront!
  8. Type safe JQuery with ST-JS
  9. Tools for Debugging Distributed Systems
  10. Beyond Agile: Continuous Deployment Panel
  11. Watch my dev2ops video about Wealthfront’s engineering
  12. When all else fails, check the documentation
  13. Slides for my DevOps Talk at Box.net
  14. Dealing with Missing Data on the Frontend
  15. Ode to Textual Identifiers
  16. Lean Startup Stage At SXSW
  17. Taking corrective action with git’s commit hooks
  18. See us at Cloud Connect 2011 – Workshop on Continuous Delivery
  19. What’s your stock portfolio return?
  20. Protobufs backward and forward
  21. Born Small… Now Huge… Winning… Bring it..!
  22. Encrypting using gpg from Java
  23. Continuous Deployment for Data, Not Just Services
  24. Bulletproof Rails Asset Caching
  25. Write Internal Tools: Business in the Front, Party in the Back
  26. Video Recording & Slides: Psychology of Testing by Misko Hevery
  27. Why Culture is Key
  28. Wealthfront Lean Startup talks: Why Fighter Pilots Run Startups by Steve Blank
  29. Test-driving your Javascript for fun and profit
  30. Quantifying Investing Skill: The Information Ratio
  31. The Amazing FunctionMap!
  32. Ruby Modules
  33. Don’t block our alleyway! But if you do…
  34. The Psychology of Testing by Miško Hevery (Jan. 18, Palo Alto)
  35. Cluster portfolios using return correlation
  36. Business up front, party in the back

2010 86

  1. Lean Startup for Geeks at Wealthfront: Miško Hevery on the Psychology of Testing
  2. Fun puzzle from Cryptography Research
  3. Using Cumulative Sums to Analyze Financial Data
  4. Factory > Fixtures
  5. Expressive Java & Fluent Interfaces
  6. Using Monadic Rainbow Tables for Eventually Consistent Higher-Order Types
  7. IRC bots for Laziness, Impatience, and Continuous Deployment
  8. Trust, but Remind
  9. When Canvas doesn’t cut it: Raphael.js
  10. Circular dependencies between entities
  11. Arrhythmia.js, a new take on rhythm validation
  12. dev2ops Video Q&A: Continuous Deployment requires great testing
  13. Continuous Deployment talk at Yahoo! Large Scale Production Engineering (LPSE)
  14. GUI Testing, Without The Gooey Parts
  15. Monitoring Long Running MySQL Queries with Nagios
  16. Less IO for your Unit Tests with a Java SecurityManager
  17. Computation: “There is no try”
  18. If you ever write a varags method…
  19. Evolve or die: Start-ups and “Dealing with Darwin”
  20. A Fix-It Day with Cyclomatic Complexity
  21. Stop wasting people’s time!
  22. Migrating a Hibernate Bag to a Hibernate List
  23. Experience of serializing financial domain objects in database
  24. Relaxing visibilities using Javassist
  25. Live Broadcast for Lean Startup for Geeks at Wealthfront with Eric Ries
  26. Wealthfront track at the Silicon Valley Code Camp
  27. jQuery the Right Way
  28. Agile, test-driven development in… MATLAB?
  29. Lean Startup for Geeks at kaChing with Eric Ries
  30. Practical Scala/Java interoperability by small examples
  31. When Garbage Collection is Failure
  32. Keeping the trunk stable
  33. DevOps Cafe on Continuous Deployment and Operations Dashboards at kaChing
  34. Models, they make everything look good
  35. Type inference puzzler
  36. Creating TypeLiterals in Scala
  37. Had a great Lean Startup TGIF at kaChing
  38. August Coolness
  39. No Downtime Database Schema Changes
  40. Type Safe Bit Fields Using Higher-Kinded Polymorphism
  41. Lean Startup TGIF at kaChing
  42. How to Get a Job at Wealthfront
  43. I Can Has Invariant Mapz?
  44. We Need More Than One; Why Programming Languages Matter
  45. Prezi on Continuous Deployment at kaChing
  46. Elsewhere: Next Generation Java Programming Style
  47. Oakland eBIG hosting kaChing to talk about Continuous Deployment
  48. SiliconValley CodeCamp 2010
  49. Murder Your Darlings
  50. Mimicking Abstract Classes with Objective-C
  51. Happy 30,000 Commits, kaChing
  52. Iterate Like a Whirling Dervish
  53. Scala on Eclipse without the plugin
  54. Guice tricks for better testability, part one
  55. Lean Startup Circle: Iterate Like a Whirling Dervish
  56. Financial instrument reference data validation
  57. Applied Lean Startup Ideas: Continuous Deployment at kaChing; Video!
  58. Just-in-time Providers for Guice
  59. Autonomy, Mastery and Purpose
  60. jQuery.data(): underappreciated
  61. Applied Lean Startup Ideas: Continuous Deployment at kaChing; Slides!
  62. Hosting Stanford’s Palo Alto Bike Tour
  63. Extreme Testing at kaChing
  64. SAM SIG: Applied Lean Startup Ideas: Continuous Deployment at kaChing
  65. MySQL and CSV to Python Objects (Made Easy)
  66. Opera takes the cake
  67. Instantiators, a Data Driven IoC
  68. A Better Option for Java
  69. Entities and Values
  70. Deployment Infrastructure for Continuous Deployment
  71. Use a Before Method in Your Tests
  72. Findbugs, Hudson and Pizza Driven Development (PDD)
  73. iPad stand FTW
  74. Testing with Hibernate
  75. Sometimes you need a little help from your friends
  76. Konami kaChing
  77. Z-Index and Local Stacking Contexts
  78. Ids and Ambiguous Method Parameters
  79. Parallelizing JUnit test runs
  80. select product(value) from mytable
  81. Voldemort in the Wild
  82. Amusing log message
  83. Complement TDD with MDA
  84. Actually Implementing Group Management Using ZooKeeper
  85. Flexible Log Monitoring with Scribe, Esper, and Nagios
  86. Subversion Backup

2009 19

  1. Attaching a Java debugger to the Scala REPL
  2. Baking availability SLA into the code
  3. emptyList(), emptySet(), emptyMap()
  4. Roasted Butternut Squash Soup
  5. Parsing Java annotations
  6. The Crunchie award
  7. Closure Compiler: Type Checking JavaScript, an overview
  8. Magic with shell
  9. Closure Compiler: Checking Types
  10. iPhone Authentication with Facebook Connect
  11. Wanted: Software Engineer
  12. MySQL Unicode Escape Sequences
  13. Easy to get burned by Hibernate
  14. New kaChing is live! time to invest like a Genius
  15. TGIF at A.G. Ferrari Foods
  16. Unifying Type Parameters in Java
  17. Speeding up with Voldemort and Protobuf
  18. Looking for a passionate Systems Engineer !
  19. First post