Thomas Ladd, Rice University alumnus and software engineer for Austin startup Help.com, said some of his best work has been inspired by inconvenience.
Improving the developer experience for himself and others also translates to better outcomes. “When I can make a contribution or introduce something that makes it more enjoyable or easier to produce high quality software, that’s a good day,” he said.
“For example, we started using an open-source package called ‘Prettier’ which auto-formats your Javascript code. People can be quite opinionated about code style –‘Do we use semicolons or not? When is a line long enough where it needs to be broken up?’ – but these preferences are oftentimes arbitrary. By using a tool that automates code formatting, we save ourselves from ever needing to argue about style or manually formatting the code ourselves to conform to that style. It has saved us a multitude of keystrokes and tears.”
Although it’s clear now that Ladd is a natural fit for software development, when he arrived at Rice, he found himself torn between Electrical Engineering (EE) and Computer Science (CS). Two years later, he was still torn, still fulfilling the requirements of both majors without a clear career goal in mind.
CS professor Scott Rixner, Ladd’s adviser, did not think it made sense to do both without a clear goal in mind. He also recognized that Ladd flourished in community-oriented design classes and directed him to take an extra senior design course.
“The projects we were doing in Stephen Wong’s COMP 310 and 405 appealed to me,” said Ladd. “We worked collaboratively, and I felt the things we learned would be applicable to a job I’d like to have. Professor Rixner was adamant I take COMP 410 because I liked 310 and 405, but I was a little worried about it. I was already going to be taking a senior design class for EE, and COMP 410 is known as a huge commitment.
“Plus, I had a long-distance Rice alum girlfriend I needed to keep happy. For those wondering, she’s now my wife and that needing to keep her happy part hasn’t changed.
“But Rixner’s advice to take COMP 410 was the best advice I got. I’d be totally different if I hadn’t taken that class. More so than anything else, it was an accurate simulation of a real software engineering job. It taught me to be proactive, speak up, and make sure my voice and ideas are heard. Even if you are not sure about an idea, it’s worth speaking up and seeing what your team thinks.”
Ladd’s ideas and ability to communicate them landed him a job with Oracle after graduation. His first assignment was to work on a legacy application and involved a lot of maintenance tasks. Then he got a new opportunity.
“Working with a pretty cool team based in Atlanta, I helped rewrite our front end using React. That open source framework by Facebook changed a lot about front end development, and I got a lot of experience with it pretty early on. When Oracle’s direction began to change, my experience with the new technology helped me get a more senior-level role in a startup than I would have been able to achieve with just my backend experience at Oracle.”
At Help.com, Ladd found other engineers equally devoted to cultivating a great development experience. He said their startup is big on automation. One of their team members is even a core contributor focused on tooling and automation for Node.jS.
The company uses Flow to add static types on top of Javascript, which increases the developer’s confidence that making a change will not break something else. Because the developers don’t have to spend as much time fixing bugs, they get to work on things that move the projects forward.
Ladd said, “The reason I’m passionate about the dev experience is because no one should have to spend their time on tedious tasks that can be automated. If you look at the actual impact over the long term, the number of hours saved is immense. We now get to focus on more challenging, more complex problems.
“Look at the parts of your day that you don’t enjoy. It’s often because the work is tedious and ripe for automation. We thought, ‘We’re developers, we should be able to automate that; it’s what we do for a living,’ so we fixed it. Our tests have evolved as well. Tests used to take hours to write for new features, but now equivalently powerful tests can now be written in minutes.”
He also believes in contributing to the growing community of developers, particularly when so many companies run into the same problems. “If you are working in a space with a strong community, benefit from what everyone else is doing and contribute back to projects when you find bugs or need new features. I follow a lot of those who I consider to be thought leaders in the frontend development and React communities, and they’re constantly tweeting about new things to try. Just paying attention to what other great developers are doing makes me a way better developer than I would be otherwise.”
Thomas Ladd earned his B.S. in Computer Science in 2014.