For the last 12.5 years (start date: October 9, 2000), I’ve worked at a wonderful marketing firm, with great benefits & freedom. I’ve gotten to work on projects that have provided great learning opportunities & challenges, and been shielded from things I opted to avoid in favor of learning more code. I’ve had countless opportunities to say, “I don’t know if that’s possible, let me try!” I love that.
I’ve never coded anywhere else.
I found my passion there & love it for that. I get paid well for what I do, and more importantly, for what I don’t have to do. Anyone who knows me, knows that leaving my job wasn’t something I was interested in whatsoever… well, with one exception.
During the 2012 Dallas Day of .NET, I met many of the wonderful people who work for Headspring in Austin. The number of attendees who drove up from Headspring to attend the conference was particularly mind-blowing to me, because I, being a local, could not convince a single one of my ~40 developer coworkers to attend.
Although that was quite curious to me, what deeply impacted me was what happened the night of the speaker dinner.
Four of the Headspringers were speakers, and therefore were invited to the speaker dinner.
They didn’t go.
They chose to have dinner with the rest of team, whom they see & work with every day, instead of attending the speaker dinner, eventually ending up at Chick-Fil-A (local restaurants that could take that many people had HUGE waits that night). They were a family, and didn’t want to go if they all couldn’t go. I got to see the love & respect they had for each other. It was wonderful.
After seeing that, I wanted to work there. I wanted to work with these brilliant, inspiring people with a passion for coding & respect for each other, but relocating was not an option for me.
I’ve seen many of my Headspring friends at many events since then (ThatConference, HTML5TX, Austin Code Camp, Codemash, etc), and have had conversations about why & how their team is so great. I particularly asked about Jeffrey Palermo, because I couldn’t really get a read on him, and he seemed kind of militant & silent & scary to me (which is funny, now that I know how kind he is… not to mention fun & hilarious), and was told that he’s a great boss who’s compassionate & considerate & a strong leader.
At the 2013 Dallas Day of .NET, I saw Jeffrey’s talks on his management style. The things he said, particularly about prioritizing communication with your people, resonated with me so much that I decided I need to figure out what it will take for me to work for him one day
“I get hired to consult for these big companies, and their employees ALWAYS know EXACTLY what is wrong. I just have to ask them & listen, and they have all of the insight, and all of the answers. Your people KNOW what’s wrong. Respect them. Listen to them. Prioritize listening to them. Never, ever blow off your one-on-ones. If you have to miss one, prioritize rescheduling.”
“Give your employees whatever they ask for. If you have the right employees, they will not take advantage of that.”
After his talks, we had some great, lengthy & in-depth discussions about managers & career, and he told me he thought working for a consulting company could be quite beneficial as a next step on my career path.
So I Listened… and Interviewed
I interviewed with Improving (and it was SO MUCH FUN – just like talking to developers at events), and I was flattered beyond words that they offered me a position, but then my logical & “scared brain” kicked in. I’ve made it through 14 rounds of layoffs over the years here. I’m grateful to them for that. How can I leave a place that’s been so good to me? What if I never get what I have here back? I have “unlimited” vacation & two small kids at home. What if I need to take advantage of that some day? I have friends here who have worked here as long as I have… Just because we don’t see or spend time with each other doesn’t mean we can’t. We’re just a closed off cube & maybe an office door away. We COULD talk to each other – just as soon as [this deadline is made]. I have everything one could academically want in in a job.
I don’t really need people who share my excitement for code here. I found that in community. I have that on Twitter. Plus, I make a good bit more money than I was offered. No way.
But that was a very hard decision for me. My mentor left my work in 2004, and I’ve been desperately seeking one since. I long to be surrounded by people who know more than I know. I love talking tech with people. I’ve found that in community, but what’s it like to not develop in a silo? I don’t know. It might be scary. What if I get put on a client that doesn’t understand if I need to take my kids to the doctor? What is consulting like? I know what to expect here. I know how to succeed. They think I’m good enough here. What if I’m not good enough there? Ok, that was fun to entertain. Off the table again.
But before I turned down their offer, I had lunch with David O’Hara (“people note:” he’s the president of Improving & made time to talk with me for a LONG time about this – super guy), who told me when he joined Improving, his wife was pregnant with their 3rd(!) child, and he came over from a job with a lot of security, and for less money “because he just knew it was where he needed to be.” At the time I thought, “pfft his job must not have been as great as MY job is” (yes, I over share. It’s my story & I’m just being honest about what I was thinking).
Honestly, my biggest torment with my decision was knowing I could have worked with Tim Rayburn. He’s inspired me for years. If you haven’t seen him speak, he sparkles. He was the 1st person I ever heard talk about the difference between stacks & queues at one of my very 1st user group meetings 4 years ago. To be told I’d have the opportunity to work with him on a 4-month project, using technologies I hadn’t been able to yet (ASP.NET MVC, RabbitMQ, EF5, Highway.Data, Castle, TopShelf, etc.) was an honor & the thought of not getting that learning opportunity KILLED me. Toward the end of our lunch meeting, I flippantly said, “haha I’ve worked there for almost 13 years – maybe they’d let me take a sabbatical.”
So I (sadly, hesitantly) turned down the offer, and went back to work.
A few days later, I got a DM asking if I was serious about the sabbatical, to which I replied, “do you want me to be?”
SO when I had the opportunity to work on a project with someone who’s inspired me for years, working on technologies I desperately wanted to bring back to our developers, I asked for (and was granted) a 4-month leave-of-absence.
Contracting On Leave
Since April 1st, I’ve been contracting for Improving Enterprises. There were a few reasons I asked for this sabbatical, including my desire to confirm my suspicion that moving from Webforms to MVC could help improve our efficiency (note: confirmed! Flattest learning curve EVER – so intuitive!), and to wrap my head around thinking the “test-driven” way (I’m still working on that). I also wanted to see how people who truly embrace methodologies that aren’t waterfall interact & function.
Although my desire to learn & bring those back had been something I’ve wanted to do for a while, what really spurred me into action was the opportunity to work with Tim. I couldn’t pass up this opportunity.
There aren’t many times I get surprised by someone, but working with Tim & getting to know him surprised me. To the core, he’s just a really great person. His compassion & dedication for teaching are pretty incredible. He’s had two apprentices & takes that very seriously. He has really taken me under his wing, and he has found a way to make my brain bleed EVERY SINGLE DAY and it is awesome. He defines “great people” to the core, both personally & professionally.
Walking in that 1st day was terrifying. What if I couldn’t grok all of this new stuff fast enough? What if I disappoint people I respect so much? What if I don’t know enough?
Yes, working at Improving is intense. In the team room, there are no cubes. I LOVE IT.
Working with Tim, I was surprised & delighted to discover that my biggest challenges were not as technical as I feared they might be (thank you, C#, for enabling me to love you so much). My biggest academic challenges were around design-pattern-interpretation & naming & business-rules/domain-related (MANY white boarding sessions around ViewModel vs Model vs Presentation Model vs Domain Model vs Entity with many different people happened my 1st 2 weeks).
But my world got flipped on its head in many unexpected ways.
Surprise After Surprise
Because I “was never going to leave my awesome job,” I admittedly haven’t paid much attention to companies & structure & owners. We all know from LinkedIn & cold calls at our desks that it’s a GREAT time to be a developer. I knew some people from Improving via User Groups, but didn’t know much about Improving, other than I’m very grateful for the fact that they sponsor so many user groups (it’s no secret I love our developer community). I didn’t know if it was a recruiting strategy or what.
Largely because of the timing of the conference & the timing of my interviews, I went to my first Agile.NET this year (I had not been to one because I work in a waterfall shop & do not control our process), and it was FASCINATING. They talked about DISC profile considerations on teams, and about shy/bold being different than introvert/extrovert (I had a blog post draft I started in January to explore & research exactly that). I saw one of the founders do a puppet show about Agile. I could not believe how great the Agile.NET conference was.
My first day, I walked in & that founder was sitting in the team room, coding his ass off. WAT? Where I work, when you start doing estimates & leading people, you don’t have time to code any more. ONE OF THE FOUNDERS IS CODING LIKE EVERYONE ELSE (and loving it, I might add)? Mind. Blown.
The turnaround times I’ve seen there are INSANE. The team room is WEIRD and AWESOME. You walk in & get instantly into what I call “1am coding time,” and it’s simply because there are 6 to 20 people packed into a single room who understand each other because they’re like each other. If you need to have an extended conversation, you leave the room (for the most part). It’s a place full of respect & mutual understanding & people working their asses off & loving every minute of it. It’s the stuff dreams are made of… or at least mine… ok maybe I’m weird, but if you’re reading this you can probably relate.
When I’d hear people say things like, “you are not your code,” it fell on deaf ears. I pride myself on my code. Code is my measure of success. When my QA team has to work really hard to find any bugs, that’s my feedback. That’s the “atta girl” that makes me feel like a did a good job. I know that anyone needs to be able to pick up my code at any time, so predictability, maintainability & “no bugs” is my measure of success.
That being said, I’m used to a certain style of coding. When I walked in & architecture was “different” [than what I’ve grown up with], in my blunt-developer-way, I asked why, and I was NOT greeted with defensiveness. I was told, “we both have version control & a delete key. If you have a better way, go for it.” WHAT THE? Who DOES that!?!? Mind.Blown.
The Improving Office
The love & mutual respect I see in the Improving office is unbelievable. The questions I hear the recruiters ask the developers are so technical I’ve been blown away, and everyone helps & wants to help each other. It’s a team & it’s a family. The others in the office make it a home-away-from-home. They just do things because they’re taking care of their people. The small number of support staff that takes care of the entire facilities details, with all of the many events they host & sponsor is shocking to me.
The spark in their eyes – the mutual excitement for learning & sharing – the kindness – the people make it wonderful to just walk in the door every morning at Improving. I’ve been a stressed-out mess, and the people have been so kind to me. Barry Forrest, Tim, Dave, Devlin Liles, Jeff Sharp, Michael Perry, Peter Brunone, Kevin Sullivan & so many more have handled me with kid gloves, and I could not be more grateful… they’ve helped me start wrapping my head around concepts oh-so-foreign to me like “if you succeed, you learn, and if you fail, you learn (probably more).” I want to live with less fear, and I want to be surrounded by this abundance of humble brilliance… and every Improver I meet has that sparkle, and is so full of life & excitement for learning. I feel like I’ve found my tribe.
I could have waited & tried the “prove myself during these 4 months, then renegotiate” thing but I didn’t even want to. Improving is so good to their people, and has such strong values that drive their involvement in community, that my view changed from “making the move with a pay cut” to “wanting to contribute to & be a part of this greater good.”
I know what Dave meant now when he said, “he just knew Improving was where he needed to be.”
Oddly, Pluralsight Was the Straw
I’ve been working very hard to convince myself that I’d be able to leave this magical place after my 4-month contract was over. I’ve been beating myself up pretty hard with guilt, every time I felt the urge to stay.
A few of us worked very hard last year to get a Pluralsight subscription for our developers. I had my own personal (annual) subscription, so I hadn’t asked for one of the logins. My subscription expired, so I asked if a login was available, and was told that no one had noticed the subscription had lapsed. I lost it. I know that’s weird, but that did it for me. To have a resource as amazing as Pluralsight available to 40 developers & not a single one noticed it expired didn’t compute to me. I met my husband for a [very stiff margarita] that night, & had a discussion about our budget. I then called Tim & told him I couldn’t leave. I’m now convinced news travels faster with Tim than with the internet, but I’m honored & excited & so very happy to say, the (expired) offer letter was reissued before COB Tuesday.
I resigned from my job of 12.5 years today.
I’m terrified beyond belief, and it was one of the hardest decisions I’ve ever had to make, but I didn’t have a choice. Working with, learning from, and being surrounded by these amazing people is an opportunity that I would regret missing for the rest of my life. I can’t let that happen.
Up to this point, I’ve spent a LOT of time asking, “Why me? I didn’t go to school for this, I just love it. Why me?” Starting now, I plan to make a concerted effort to say, “why NOT me,” and see how that treats me. Will I succeed? Not always. Will I learn more in a shorter time here than I’ve ever learned, anywhere? I already have & can’t wait to see every single day how much better my code is than the day prior.
I Should Have Known from the Name
Check this out http://www.improvingenterprises.com/about/people/
We firmly believe that our people are our most valuable asset. Too few companies invest in their people in a meaningful way. We founded Improving Enterprises to help people reach beyond their current limitations. The constant desire to do better is ingrained in everything we do, from how we approach our clients, to how we think about problem solving, to how we evaluate our own performance.
Most consulting companies are merely interested in outsourcing your projects or staffing your project with warm bodies. We are happy to work ourselves out of a job. Many people think we are crazy when we say that.
We think of it as a strategic advantage.
At Improving, we strive to say what we mean and mean what we say. And, integrity means keeping one’s form, even under pressure. Integrity is the foundation of our open and ethical approach to business.
We believe that great relationships are built on a foundation of honesty and trust. Nothing more, nothing less. Our own team practices openness, transparency, and honesty in our interpersonal dealings, and we believe honesty with our customers and within our customer’s teams yields the best results for the individuals and for the business.
Entropy affects everything. Studies show that a large number of features in modern computer systems are seldom, if ever used. Systems tend to grow in complexity to the level that they can be managed. Simplicity is something that must be constantly applied to minimize waste and management overhead.
From iterative development, to lessons learned, to exploring acceptance tests with our customers, we actively seek and provide feedback as a means of Improving.
And if you haven’t seen their insane schedule of events, here you go: http://www.improvingenterprises.com/events/
I love that I’m going to be a part of this.
Kids Say the Darndest Things
Everyone saw this coming but me. When, through my tears, I told my 9yo daughter I made the decision to leave Monday night, her response was, “Mom? No offense, but if you KNOW that’s where you’re supposed to be, why has this decision been so hard for you?”
Then Tuesday night, after picking up my kids from school, this conversation happened:
“Mom, did you quit your job today?”
“No, but I got my offer letter.”
“What does that mean?”
“That means they’re going to pay me :)”
“Let me get this straight: So you’re getting PAID to work with people you love, doing WHAT you love… That seems like a pretty good life to me.”
I couldn’t agree more, oh wise 9–year-old, I couldn’t agree more :)