Congratulations! I’m glad you get a chance to grow your team and build something huge.
I might be able to help.
Suppose you want to hire me specifically.
I feel so validated :). Thank you for appreciating the work that I do.
I’m about to explain some stuff. That stuff might make it clear either that I am perfect for your team, or that I’m definitely not a fit for your team. If we’re not a fit, this will save us both some time!
At any point, please feel free to skip to the section called “You’re not a fit, Chelsea. Who else do you know?”
What can I do?
I focus on building maintainable, resilient software, and putting the pieces in place for your team to do the same. I’ve done mobile. I’ve done server. I’ve done compiler design and machine learning models. I’ve had fun doing everything, and I’d do it again, in any language. I even think the annoying stuff has value. I encourage you to laugh at me when I get mad at computers.
I think a lot about context sharing, risk mitigation, and debugging. Lately I also teach software engineering practices, usually in computer science graduate courses, but occasionally also in professional workshops.
What am I looking for?
I take projects that have something to do with saving the planet, advancing scientific research, or providing resources to underserved communities.
I prioritize projects that allow me to live stream my work. I narrate and stream some development to my YouTube channel for these reasons. It’s important to me to transfer knowledge—and therefore, power—to the broader tech and tech-adjacent community. It’s also a strategic opportunity to get your name in front of people who want to learn more about the stack you use!
I fit with teams who embrace remote work as a strategic opportunity to improve their collaboration. This is not the same thing as a team that allows occasional remote work as a begrudging concession to its people.
You’re totally a fit, Chelsea. What’s next?
Three things: we need to meet each other, you need to verify my technical chops, and I need to verify some things about your mission and your team.
Let’s cover each of these in turn.
1. We need to meet each other.
You probably have an application process for which you need people’s resumes and general information. Honestly, feel free to just submit me on my behalf and let me know via email (chelsea at chelseatroy dot-com).
- My most recent 10-20 blog posts are the most accurate representation of my career and recent work. For accuracy, that’s what you want. For sticking to an arbitrary application format, though…
- Here’s a link to a resume (the date on the link will tell you how recent it is).
I feel weird saying this next part. But we’re considering a relationship here, and I try to communicate openly and honestly in relationships 🙂. Here goes:
I know immediately that we aren’t a fit if the company starts acting like I need them. There are two reasons for this:
- I don’t need them. I have my own successful business. I end up fully booked and have to turn away good clients. When your developer starts acting in the interview like I need this job, that shows me he didn’t read the bold print before he walked in the room.
- I’m pretty specifically not looking for a company with a general-type position that I, or any of a dozen other candidates, could ostensibly fill. I have a particular set of skills: I’m an engineer, I’m an orator, I can write, I can nurture a community. I think I can best contribute to a team that needs and expects all of that from me, and recognizes the last three as table stakes things, rather than added bonuses on a job that doesn’t really require them.
OK, so, suppose we meet each other and it goes well. Next:
2. You need to check my technical chops.
To that end, I have several open-source examples of my work, including:
- This end-to-end data science cycle
- This in-memory database implemented in Ruby
- This complete example of proxy models in Python (on Django)
- This React Native App that searches for unsplash images
- This Android app that collects and caches data stored in a list
- Raft in Python
- This README directory of the apps that I write for teaching mobile development in the University of Chicago Master’s Program in Computer Science, as well as this resource containing the slides and curriculum I use for one of my courses
- Hundreds of blog posts, with a sidebar that allows you to filter the posts by programming language
- You can literally watch me write code for hours in real time on my YouTube channel
I have almost certainly leveled up since I did what you see here.
Companies for whom my existing work will suffice as a code challenge get precedence over companies that need me to do their specific code challenge.
Chelsea, we need you to do our take-home code challenge specifically.
I understand: sometimes, the above examples don’t cover what you need to know about my contribution capacity.
Here’s the thing about take-home challenges: you’re asking candidates to do what they do for money (write code), for you, for free. So it’s important to put some thought into how to make that worthwhile. Here’s how I make sure you’ve put in that thought:
- Your code challenge lines up with the job you’re hiring me to do. I have seen cases where the code challenge is not relevant to the skills I need: for example, a parallel programming challenge for a data science position, or a binary tree from scratch for a web application development position. This is a big red flag.
- Your code challenge is interesting. The challenge has to support me growing my skills. I want to be able to learn something from your challenge, just like you learn something about me from your challenge.
- The time frame covers multiple programming sessions. I work best when I have time to think between spurts of coding. Also, a time frame that spans sessions is realistic to the job you’re hiring me for, unless you’re hiring me to enter speed hack competitions, which you aren’t.
- You agree that I am free to publish the body of my submission, in whole or in part, for use in blog posts, teaching, or code chautauquas (the programming version of M&M conferences).
- I am not trying to give away your proprietary challenge. I will not publish the text of the challenge itself, nor the name of the company that gave it to me. I will only publish code I wrote. I keep this clause in here to ensure that I get to further either my own skills or someone else’s skills with the work that I do for you.
3. I need to verify some things about you.
In addition the code challenge step, you’ll want to know some things about me as a person. I’ll also want to know some things about you as a company. I will ask these questions, so I’m putting them here to avoid surprising you on the spot. You’re also welcome to let me know the answers ahead of time, if that approach is easier for you!
Seven Questions for Companies:
- What is your team’s approach to engineering rigor? I’m looking for a commitment to testing, to resilient software design, and to technical collaboration (including pairing, though it does not have to be constant pairing).
- What topics come up often in your technical discussions? Are you talking about customer needs? Code legibility? Speed of looping over 14 keys and values?
- What does mentorship look like at your company? This is how I evaluate mentors. Folks who are excited to mentor and who are a good fit to mentor me make a job much more attractive.
- What is the experience level of your managers? I’m looking for managers who either a) got way out ahead of where I am now as an individual contributor before they became managers, or b) have made a career out of growing and supporting direct reports—especially direct reports who do not look or think like them.
- What does your leadership look like? I’m looking for diversity. Here’s what I mean by that.
- What does your engineering team look like? See above.
- What are your company strategies for building an inclusive culture? This is a strategy. “We mention that we want to hire women at the all hands” is not a strategy.
You’re not a fit, Chelsea. Can you still help me?
I know that I am looking for something very specific and that I also have really annoying strictures around the code challenge. Not your schtick? I totally get it.
So if you don’t fit all those criteria, there are totally still things we can do.
- Part-time projects. For the right combination of things, maybe we can carve out some work to do together.
- Coaching your technical team. I do this a few different ways:
- I can hold a workshop for your dev team. I do workshops on refactoring, on debugging, and on advanced collaboration skills. We can also talk about a custom one, if you have something in mind.
- I work with devs one on one specifically on their technical skills and technical collaboration skills. Like a personal trainer, but for programmers. We can work specifically on what they’re doing at your company, if you like.
- I can give a talk at your in-house conference or all hands (see speaking)
By the way, my clients…well, let’s just say they’re not regretful 😉
“We brought Chelsea in for a consulting engagement to pair with our team as they worked on our company’s first iOS application. It’s some of the best money we’ve ever spent—the team broke through several blocking issues, could get immediate answers to the “right” way to do things without hours of research, and has maintained a higher level of productivity after. We didn’t just get important work done, we learned a lot that made us better later. Could not recommend more highly.” – Trevor Austin, VPE at Hologram
“If you’re looking for a speaker who can deliver a customized, thoughtful, engaging, and witty talk that can resonate with your audience – look no further than Chelsea. Not only does Chelsea have a wide-range of technical and non-technical experiences that she can speak authoritatively about, the thing that sets her apart is her ability to hone in on the material and message to create an emotional, inspirational, and actionable response that’s specific to her audience. Chelsea recently did a keynote for us and we were very impressed with how she took her experiences, made them personal to us, and provided tangible next-steps on how we can progress in our journey. Suffice to say, we were very impressed with Chelsea and would happily have her back!” – Craig Luchtefeld, COUNTRY Financial
I can also introduce you to folks who might fit your full-time role.
I know a few amazing folks who would also be open to positions. Most of them will also be interested in the answers to the “Seven Questions for Companies” section above.
I keep a list of these folks on my end. For the sake of their privacy, I don’t post anything here about the fact that they’re looking. I have folks in ops, engineering, machine learning, UX Design, and product management. Years experience range from 2 to 24 (though years are a poor proxy for skill).
To get connected to these people, please have the hiring manager e-mail me the answers to the questions above. If all of the questions are answered, I’ll share that with my list. If I get a bite and they’re ready to be not-anonymous, I’ll connect you directly. If the person has follow-up questions but they want to maintain anonymity, I’ll be their go-between to you until they’re ready for direct contact.
I don’t take a cut from them or a recruiting fee from you. I also can’t guarantee you a bite. I’m just trying to get my friends their dream jobs. That’s all.