def One Year end
The title is a joke about ruby- it means that the method began, one year occurred, and then the method ended.
In some ways, this has been the best job of my life, and it’s not yet over.
We’re currently in the maintenance and wrap-up stage, where we make sure that everything is stable and can be maintained with many fewer people. I am very sad that this happened; we were profitable and rising from strength to strength, with happy customers, better uptime than ever before, strong leadership and a cohesive engineering team with good communication and relations with the support and product teams. So yes, I am very sad that our path has changed so definitively. Going forward, the merchants are very important and we are sure that the system will continue to serve them indefinitely in its current sturdy state.
Numbers
I was on call For Real for a paid job (not just on a rotation) for the first time in my life. Guestimating by email logs, I’ve been paged ~86 times this year, which wouldn’t be so bad if they were during business hours.
Internal github tells me “Contributions in the last year: 2,718 total”
Memories
The combination of the company’s resources, the startup’s management, and my team’s spirit made my life mostly easy and fun.
Free lunch really can’t be overstated as a team building tool, productivity enhancing tool, and personal-finances-enhancer.
I took some great vacations this past year. You can see them in my git log, especially the full clear week near the beginning of the year. Unlimited vacation and product-focused development combine to make me both productive and relaxed. A few times I’ve stayed home for a day or gone home early, usually in order to sleep off an illness before it hit me fully.
I went to some fantastic conferences. Grace Hopper, &conf, Strangeloop, SCALE14x, Madison Ruby, LWT Summit.
Many of us are already in contact via channels outside of work, and I look forward to knowing these people as we all begin the next phases of our lives, whether that’s as the Last Maintainer, being adsorbed into the company’s mothership, or finding new companies, or going freelance, or backpacking across one’s continent of choice.
Learned
I’ve learned an enormous amount; most of it involves learning better debugging techniques, and various intricate details and patterns within various ruby libraries. I’ve learned a lot about rspec, and capybara- all the exciting upgrade-related failures, and concurrent operations, and scoping. I’ve become much better at figuring out what action I can take in order to fix escalated customer issues- tracing the bad data or the bad operation back through all the layers of logging into actual causation.
I have a long way to go between here and perfection, but I don’t believe that perfection exists or is useful to attain; as long as the code works in production and all the edge cases behave properly… is that not perfection? I would argue that perfection is the provable completeness of a solution, and I know that some larger companies are investigating proofs-of-completeness on the system level… it is an interesting field.
Several months ago, there was a re-organizing of teams and we got to see new people’s leadership skills. I am impressed with how we grew as teams through and beyond that event. At the time I was unsure whether this was Doom or merely Dismay.
I have a strong memory of a page that I escalated after some quick debugging- I was just absolutely stumped. The majority of the engineers ended up in our team chatroom, and it took the combined knowledge of several people, including one who had to pull over while on a long road trip, to solve the never-before-seen-by-us problem. The feeling of deciding to alert such a large group of people was memorable.
I kept a daily log of what I did, which really helped me feel not-terrible even after hectic no-progresss days.
I’ve learned a lot about the management of restaurants, employees, overtime laws, and various weird things that restaurant owners do or want that I had never considered in any way before. Thanks y’all awesome people for teaching me!
Proud
One of the things that I am the most proud of personally doing is creating and growing the “W@G” internal hipchat group. I did this in large part by
-
Posting something every day and inviting comment, even when it felt silly/strained to do so.
-
Sending an invite to every person with a vaguely-female sounding first name. I worried that this could be an overreach on my part but no one has given me any negative feedback about it whatsoever.
There is so much more to say. Maybe someday.