A Month in the Startup Life (Week 3)
This was a pretty busy week in terms of learning. After last week’s scaling mishap I spent this week trying to understand the bottlenecks in Glossi and added NewRelic to help us monitor our system. We quickly noticed that a certain component of our pages was taking too long to render. This led us to implement a caching solution that decreased page load times by 30%. The big lesson here is that it’s critical to monitor your system before trying to scale, otherwise you won’t know if you’re focusing on the right components and will end up prematurely optimizing.
Here’s the third week:
- 4/2 - Met up with another NYC tech guy to talk about dealing with scaling. Got some pretty interesting ideas and decided to give NewRelic a try. Caught up with an old friend in the afternoon via phone and ended up sending out a few intros. Refactored a bunch of the Facebook backend code to make the page and profile integrations use the same code paths.
- 4/3 - Spent morning finishing up the Facebook refactoring. Met up with a friend who’s learning to code and spent some time working with him. Started refactoring the Glossi code to make implementing a caching system possible.
- 4/4 - Had the weekly call with a potential client. Finished up the basic caching work that should lead to ~30% speed improvements but now need to clean the code up. Researched memcached to see how difficult it would be to implement it - seemed pretty straightforward. Went for a run.
- 4/5 - Worked more on getting speakers and space for the web scaling meetup group I’m starting. Met up with someone about doing a consulting project. Caught up with a former coworker who’s also doing a startup. Had lunch with two other data/ML startup guys. Had a late birthday dinner with the family.
- 4/6 - More caching coding and cleaning up refactoring from a few weeks back. Ran some errands before having Passover Seder with the family.
- 4/7 - After getting back to the apartment, worked on testing the caching solution and improved logic around job frequencies and cache expiration. Hacked around with a side project to play with Flask/Heroku/Verite Timeline. Went for a run.
- 4/8 - Hacked around a bit more on the side project and had to deal with all sorts of annoying unicode/ascii issues as well as the Python datetime library limitations. Did some caching testing and identified a configuration mistake on my end. Met up with cofounder to finish up UX for Facebook page integration and started work on custom themes.
I apologize for not posting this last week. I was gone over the past weekend and didn’t get a chance to finish this post up before I left. I’ll have the fourth week up later this week.