A photo of James, an adult man with graying brown hair, looking up and to the left whimsically.

James Socol

I help software engineers, teams, and organizations build products more effectively.

I’m a software engineer and technical leader with a track record of shepherding cultural and technical transformation across multiple engineering organizations. I've focused on the software development life cycle (SDLC), with particular emphasis on continuous integration and deployment (CI/CD) and on post-incident learning; and on leveraging system topologies to improve the effectiveness of teams.

Over the years, I've had opportunities to work on sociotechnical challenges like setting technical visions; improving incident response (IR); adopting CI/CD; increasing productivity; participating in open source projects; and improving application security. In my roles as a manager and director, I've worked with other leadership to improve clarity and equity by establishing department values, building career rubrics, and improving hiring pipelines.

I live in Brooklyn, NY. When I’m not at work, you can often find me playing shuffleboard or at a table playing D&D or another pen-and-paper RPG.

Writing

I have a blog where I sporadically write on technical topics including testing, CI/CD, project planning, evolving software. And on anything else where I feel like I have something to contribute.

I also write about TTRPGs sometimes. Fair warning: I use this blog as a place to practice editing myself less and hitting “post” faster.

Speaking

I love giving talks. Mostly I've talked about CI/CD and occasionally about topics like documentation and open source software. Below are some examples:

I also appeared on an episode of Software Engineering Radio discussing the CI/CD mindset and practices.

Open Source

Since around 2009, I've been an active open source contributor and maintainer, and fascinated by licensing and intellectual property. Since then, I've had the opportunity to help create policies around open source software (OSS) for a variety of teams, and to introduce new developers to the world of OSS.

I currently maintain a handful of open source Python libraries, and was the original creator and maintainer of a couple of popular ones.

statsd
A popular Python client for Etsy's StatsD instrumentation server.
django-ratelimit
A tool for limiting access to Django views.
django-jsonview
A compact library that makes building JSON endpoint simpler.
django-waffle
(Created.) Waffle is a feature flag library for Django applications.
bleach
(Created.) Bleach was a library for cleaning user-submitted HTML that was based on the HTML5 parsing algorithm to avoid common security issues.