Name: Eric Newbury
Designation: Agent 0063
Double Agent Role: Senior Software Consultant
Special Skills: Functional Programming and GraphQL
Aliases: github twitter linkedin
Location: Washington, DC
Favorite Emoji: 😬
I don’t think I have a single thing I’m most proud of. Probably a lot of little things. There are impacts I’ve had for clients or companies, and then there are impacts I’ve had on the open source side. I’m proud to be the maintainer an open source library finally. That’s something I’ve wanted to do for a long time. I’m also proud to have contributed to a programming language (Roc) that is yet to be released and live, but I hope that it will see the light of day. And on the client side, I would say I’m probably most proud of the work I contributed at Enbala, a smart power grid organization. The work they were doing was personally exciting to me. And the impact that we could have was very far reaching. There were many exciting pieces, but everyone contributed important things there. So, just being a part of that was exciting for me.
I would say on a more personal side, I’m really excited to finally get back together for a full company retreat and see everyone in person. That’s something that, because of Covid and the ongoing waves, we’ve not really been able to make it happen. I think we’re finally getting to the point where everyone can come back together, and I’m really looking forward to that. On the work side, you never really know what clients you’re going to get, so it’s hard to say you’re looking forward to something specific. But, in general, at every new place I meet a new group of people that are really smart in certain things, in certain skills and technologies. And I just love that feeling of always continuing to expand my group of people that I continue to reach back to as I go forward in my career. People I can ask questions about different things or share stories. And, you know, especially in the Elixir world where it’s a fairly small community, having that ever growing circle is always exciting and I’m looking forward to growing that further.
For me, I think it has always been the autonomy. As someone with a fairly unusual lifestyle traveling around the world for dance competitions, it means I’m often working in different time zones. And the trust I get from Test Double to communicate with the client and find out what works for them and then just make that happen, is really exciting. But with that, they also have a good balance of support. So I can be autonomous but I also know that if I’m having an issue with the client, there’ll be somebody who can start working on my behalf if it’s not something that I’m set up well to succeed. They might have different connections and they can step in. So the balance of those two things is my favorite part.
Since I haven’t worked at other consultancies, this is a little hard for me to say what’s truly unique about it. But from what I’ve heard, we have had—and I hope continue to have as we grow—a really close knit community. I’ve heard that this can be kind of elusive at a lot of places, but it feels like this is consistently the one thing that never seems to change here. You can always find a group of really excited people to talk about whatever it is that you need help with or want to chat about. I don’t know if that makes us unique per se, but it is something unique among the places I’ve worked before at product companies.
The sustainable software development practices that I wrote about in one of my blog posts. I’m starting to have a lot more opinions about what is a sustainable type of business model, and what is a little bit more of a parasitic business model to be a little bit blunt. I have strong feelings that a company should grow at a rate that’s equal to what they produce and what they contribute. I don’t feel like it’s great for society in general to have companies that can grow at a rate that is exponentially greater than what they’re putting back out into the system. The reason I’m thinking about it a lot is because I don’t necessarily have a good answer for what would make it possible for businesses to be profitable, but that doesn’t end up leading to this type of thing.
In my blog post, I explored the idea of everything being open source. Companies would have to focus more on their expertise, their services, and the code they produce being available for people to use and run on their own. The code authors are the experts that built the software and can help deploy that in various places and support it. But I recognize that this works better for some things than others. There are some products that are truly unique inventions that nobody else could understand how to do, and there is some value in you being the one and only person or company that can create that and produce that. So there’s a lot of thoughts in my head about maybe different tiers of businesses at different sizes having regulation, or there might be business norms about at what size you start focusing more on different areas of profitability.
I guess I can tell a story from my first job that was very cringy. I was a few months into my career as a software engineer and was very excited and learning about a new technology in Java for writing compile-time, safe SQL queries (jooq). I had used it on personal projects, and it had been introduced to the codebase of the application I was working on maybe a year prior. And I came back and the dependency was there, but it hadn’t been used. And so during an innovation week, I took on the job of converting a small application to using this library. I finished up for the week and jumped on a train headed off to a competition in another state, and was not to be heard from until Monday.
I discovered upon returning that I had spent over $30,000 of other clients money, and used it for different clients. I had unintentionally funneled advertising dollars that one client was paying and used it to pay for their competitor’s advertisements. And the reason for this was a very small difference in versions. The library version that they were using was older than the one I had been using on my side project. And in that version, it didn’t have checks for ambiguous column names, which in straight SQL is an error. But the way that it compiled down these queries to SQL, if you had joined two tables and the two column names were the same on those two tables, it would compile down and just basically take the table name from the first one that you had used and apply that to all of them.
And so unfortunately that meant that it was checking values on tables and joining them to rows that they weren’t meant to be joined to. And that happened to be a lot of their competitors. You could make a lot of arguments about how more testing and more checking and all these various things are good and might prevent this—but honestly what I learned most was the response from the team was very supportive and understanding. And I learned that yes, making mistakes is inevitable, especially early in your career. And maybe less frequently, but you are going to make significant mistakes later in your career. And that is normal, and it’s difficult, and humbling, and frustrating, but you want to work at a place where people get that and understand that.
I’m really excited to be competing in the Ballroom Dance World Championships in the Netherlands at the end of this year. I’ve never been to Holland. I’ve never been to the World Championships. It’s going to be exciting. It includes a big training camp for the week before as well. So I’ll get to be working with all the top teachers in the world who will all be there, and I’m very excited for that.
There’s a book called Wired for Love that my partner and I are working through together. It’s written by a psychologist to basically break down the neuroscience of how the brains of people work through conflict and connect and relate. Mostly because as a dance partner—and obviously as a life partner, but especially as a dance partner—this has been helpful. Because you’re constantly put in such high stress, high conflict situations. You’re actively trying to accomplish the same goal, but in opposite roles where you’re having to give and take all the time. The brains are constantly out of whack and going into danger, fight or flight mode. When somebody’s really up in your space and they do something that pushes you off your balance or whatever, it’s a very primal reaction.
And learning about how the brain deals with those kinds of things, has been incredibly useful for us, in dancing and in life. Learning about both the subconscious nervous system and the conscious nervous system, and how one can hijack the other, plus the different types of ways that humans have learned to relate to each other based on life experiences, and how they work on autopilot has been very fascinating. So we’re not through it all the way yet, but already it’s been incredibly useful.
That I’m not as much of an extrovert as I thought. I do now need my alone time and enjoy my alone time.
I’ve been ambushed by a bear trying to steal our camping supplies and had to fend him off with sticks and stones and a lot of bluster.
This interview is based on a recorded conversation with Eric Newbury and Cathy Colliver. It may or may not self-destruct.