For the last month or so, I’ve been meaning to write about my professional experiences – on the job and otherwise – during my first six months as a software engineer slash platform engineer at Gilt Groupe. It’s been an incredibly hectic six months: a whirlwind mix of glamour, stress, excitement, fear, novelty, pain, and gratitude. From that frothy brew has come a staggering amount of technical growth, something I quite frankly don’t give myself credit for in the midst of my day-to-day frustrations. It will be personally useful to document some of the aspects of that growth here, as a reminder of the less obvious things I’ve accomplished, on those (many) days where I’m spinning my wheels and feeling discouraged.
I meant to write so many other entries in these last six months, starting with a rundown of my impressions of the job search and a summary of the reasons why Gilt was ultimately the right choice for me. Those quickly became distant memories as I encountered new experience after new experience on the job (and corresponding inspiration for even more blog posts). By September, while enjoying some excellent reflective time at Burning Man, I decided the six-month mark would really be the best jumping-off point for more productive future blogging. But I can really only allow myself a half hour at a time or so to sit down and write; when I mind-mapped the things I wanted to cover in even a “brief six-month summary”, it quickly became a monster of its own. I’d like to be blogging more often, so let’s try a different tack and slice that six-month beast into little pieces.
* * * *
As part of my six-month reflective mind-mapping exercise, I outlined the things I really loved about my new job and the things that were problematic, and was really heartened by how quickly the few “needs improvement” bits were dwarfed by the stuff that’s really fantastic. That’s easy to miss in the midst of day-to-day ups and downs, and the anchoring sentiment in all of my reflections. I’m in the place I want to be; making the most of it is really up to me at this point.
At the start of this year I had a pretty good sense of where I wanted to go next career-wise, but I wasn’t sure if I could find all of that in one job; I’ve been “surprised and delighted”, to use a Gilt catch-phrase, by the ways this position has met my needs, often without any actual intervention on my part. That’s a wide-ranging satisfaction that has often extended beyond the scope of the tech team. It’s all been refreshingly positive, and quite a bit of fun.
Here are the core bits that I wanted from a job back when I was interviewing, and that Gilt has provided:
- A product that I can get excited about, and can explain / promote to friends and family
- Engineering work involving a diverse set of tools and technologies – a nice mix of proven, well-tested tech and the cutting-edge.
- Opportunities to work more with software methodologies like scrum, pair programming, and test-driven development
- Frequent opportunities to learn new technologies and increase mastery over those I already know
- A say in the direction of the culture of the organization and within the external community as a representative of the organization (specifically, the Portland engineering team)
- Smart, hard-working co-workers who hold themselves to high standards
One of the things I forget – quite often – is that my choice to stick with programming classes in my initial years as a coder was influenced by quite a bit of masochism – it hurt, but it didn’t hurt too much to quit, and it actually felt a little good in the bits where the pain let off. I’d find myself signing up for another year of classes, despite having no plans to stick with programming in the long run (I had finished two years of high school programming, and three years of university Computer Science courses, before deciding “Maybe I won’t just do this as a torturous side-hobby after all.”) Something about the pain made the accomplishment that followed it that much more satisfying, but if you’d asked me at any random time what I thought of the experience of being a CS student, I would have unloaded quite a bit of vitriol and misery.
I need to remind myself of this omnipresent component of my relationship with programming – that dichotomy between the (majority) frustration and the (minority, but addicting) glee, accomplishment, and satisfaction – when looking at my new job. Because I’m getting exactly what I wanted out of this job, but “exactly what I wanted” turns out to be pretty painful. Quite frankly, that makes sense – working with a variety of technologies, many of them new, is a lot more difficult than working with the same thing every day; the software methodologies I haven’t tried are going to make me incredibly uncomfortable while they’re still unfamiliar; if my coworkers are as smart and hard-working as I want them to be, I’m going to be the slowest and least knowledgable in the room far more often than if they weren’t – but it’s easy to not see the forest for the trees in that pain, and feel discouraged. It happens a lot, and I want to give myself a more frequent dose of perspective: growth always involves growing pains, and the last six months, for me, have been a full-fledged growth spurt.
I’m looking forward to exploring these growing pains, celebrating the ways I’ve grown and acknowledging the work that’s left. I also think there’s some real utility to exploring this discomfort in a professional context, because I don’t see as much acknowledgement of these tricky, multifaceted transitions as I’d like. There’s a lot of really interesting information to share.