Tagged In continuous integration :
Build System Integration Testing with Chef
At Wealthfront, we’re constantly pushing to use cutting edge technologies to take advantage of new language features, improved compilers, new libraries, and the like. Downtime in our build system would be a big problem with how often we like pushing new code to production, so we want a process that would allow us to upgrade parts… Read more
Configuration… Hardcode it!
If you’ve read other Wealthfront engineering blog posts (Continuous Deployment: API Compatibility Verification, Move cash faster, Pushing a Feature On My First Day), you’re aware that continous integration and deployment forms the core of our development process. Many consequences of a continuous integration and deployment process such as ours are obvious – high confidence test… Read more
Pre-commit Tests
Keeping the trunk stable matters a lot at Wealthfront. We do continuous deployment, and when the build is broken our deployment chain stops. We have a flashing light in the office and a pre-commit hook which prevents any commit until the build is fixed. The best way to know if a commit would break the… Read more
Test-driving your Javascript for fun and profit
With web-based UIs growing more complicated everyday, testing your Javascript code is just as vital as testing any other part of your stack. At Wealthfront we use jsTestDriver to provide test-coverage of our javascript code. We like its similarity to JUnit and the ease with which it integrates with Hudson. In this article we’ll drum… Read more
Agile, test-driven development in… MATLAB?
I recently decided to take a leave of absence from kaChing to work with the Covert Systems Biology Lab at Stanford on building the world’s first “whole-cell” computational model. The team (size: 3) is extremely talented and packed with domain knowledge and experience, but they’ve never worked on a piece of software this large before. When I accepted the… Read more
Keeping the trunk stable
Since the very beginning, kaChing has been trunk stable. In other words, everybody develops on the trunk and the software is stable at every point in time. Our trunk is being continuously built and tested and we cannot deploy a revision to production unless the revision has been successfully built and all the tests are… Read more