For the last year or so, I’ve been working in a pretty standard Javascript stack – Mongo, Node, Express, React. Modeled on the so-called MEAN stack, this has the advantage of a native Javascript data store along with some reasonably mature tooling. But I wondered – why didn’t this have its own four letter acronym? […]
As I look back on my time at TripAdvisor and HelloShopper, and think about conversations I’ve had with various startups, one of the recurring themes has involved building and managing engineering organizations, particularly during rapid growth phases. From five to fifteen, to twenty five, to seventy five, to a hundred fifty, and so on. Each of these ramps […]
Some people are hard to read. Some situations are complicated, with pieces moving behind the scenes in a Rube Goldberg mess of not-quite interlocking puzzle pieces. Sometimes people intentionally withhold information – maybe they were told in confidence, or perhaps there’s an HR reason for keeping a secret. Sometimes it’s none of your business. Or it is, […]
Consider the generalist software engineer. She has a solid grasp of CS fundamentals, knows several programming languages, can write scripts, program user-facing front-end code, and work on deep algorithmic problems in the backend. For her, coding is a set of logic puzzles, debugging, patterns and anti-patterns, architecture, and tradeoffs between fast, cheap, and good. Most developers […]
Interviews are weird. Of course there are the nuts and bolts – getting there early enough but not too early, dressing nicely but not too nicely, the technical and behavioral questions, and so on – but more interestingly, every so often someone asks you a question that really forces you to reflect seriously on your experience or worldview. […]
The plan had always been to go for an A round in April. We had a solid idea (personal shopping!), enough cash to carry us through June, a great set of investors (seriously, some very nice and sharp people), and, to the degree to which you can depend on these kinds of things, a solid expectation of […]
At TripAdvisor, the devops team managed about 400 physical servers spread across three server rooms. We ordered and provisioned new hardware, scavenged parts (and sometimes whole servers) from the live site teams, replaced hard drives, installed and upgraded OSes, rebooted, rewired, and were generally on call for all manner of problems. What a pain. I mean, seriously, […]
I’m a Java guy. Or rather, I’m a C++ guy who ended up in Java. I like statically-typed languages, and think it would be cool if Java had double pointers (or at least reference parameter types) and explicit memory deallocation. I spent the better part of a decade coding video games in C++, and twelve […]
It’s trite, but true – when I first started at HelloShopper (né Scratch), I was overwhelmed trying to come up to speed on a new company, new team, new commute, new set of technologies, new code base, new tools, new operational infrastructure, new risks, new, well… Everything. The existing team had put together a website […]
Note: This is the first post in a series of musings and reflections on my first year in startup-land. The most important goal for any manager is to ship product, and the highest leverage task toward that end is to build a great team. I’ve had the privilege of working in companies with great engineering […]