Katie Dillon has many hobbies. During the pandemic, she picked up candle and jewelry making, opened an Etsy shop, learned new watercolor techniques, and poured hours into maintaining her vegetable garden.
And recently, her interest in the lindy hop community has been resparked. “Swing dancing is something I enjoy doing,” she shares. “I used to travel for dance every other weekend. It was a huge part of my life. And I recently got inspired to get back into it.”
Whether through crafting or dancing, Katie enjoys harnessing her creativity — a skill she also uses for her work as a Software Engineer at SeatGeek. We sat down with Katie to learn how producing effective code involves creativity and design thinking.
Following Her Interest in Design
Katie grew up within a family of software engineers. “My dad is a software engineer and my younger brother has always wanted to be a software engineer,” she shares.
Katie, on the other hand, wanted to carve her own path. “I wanted to do the absolute farthest thing that I could think of from software engineering. There was no way that I was going to code.”
In an effort to find her own voice, she joined a filmmaking program in high school. “It was film, design, and English,” she explains.
After two years in the program, her mind was set on filmmaking and she applied to several university filmmaking programs. Although she was accepted to some reputable schools, she started having second thoughts.
"I thought I didn't know exactly what I wanted to do, so I wanted to go to a school that allowed me the flexibility to change my mind. I ended up applying to some design schools and then going to the University of Michigan," she says.
There, she pursued an art and design major and started on her career journey.
“I [ended up] doing graphic design, UI/UX stuff,” she explains. “I was doing a lot of freelance design work and consulting for small businesses. I was full design and felt pretty good about that for my future.”
Katie had regular clients and a full schedule with her design work, however, she felt inclined to take an intro to coding class to stay current—and keep up with her family’s dinner table conversations about machine learning.
“[I thought to myself], ‘I'd like to understand what this chaos is when my dad talks about it,’” she admits with a smile.
And after that first class, she was hooked.
Merging Creative Design With Coding
“I took one class and I [knew] this was for me,” Katie shares.
“It opened my eyes to the fact that engineering can feel like adult Legos, where it's highly creative, but in a way that also tickles my organization brain,” she explains.
Because of her newfound interest, Katie decided to finish her design degree with a minor in computer science. While working to achieve this, she got a first glimpse at what a career in tech could look like. This glimpse came from an internship for a company she was previously doing design work for. “It was a local company in Ann Arbor. [I told them] I wanted to code and it worked out great,” she shares. She went on to describe the invaluable mentorship and support she received during her transition from design to code. “That internship really helped me envision what it would look like to work as a software engineer,” she adds. “Something I’m still grateful for.”
Because of her design background, Katie was able to draw similarities between designing and coding. From a design perspective, coding is “designing how a system is going to work or designing the flow of information,” she explains.
She has always thought of design as a form of creative problem solving; understanding a problem or a pain point that needs to be solved, ideating different possible solutions, and then realizing those solutions.
Similarly, coding involves designing creative solutions to problems. In both cases, these problems often have many solutions. “With coding, we're not outputting something visual, but designing how information moves through a system,” she explains.
The key is being able to design code that helps reach goals; and design thinking plays a crucial role in that. “There are so many different design choices that make good code.”
Using Creativity to Code at Seatgeek
After her first experience with coding, Katie decided to expand her career and found SeatGeek through a job search. What caught her attention was the staff.
“Something that resonated with me was that there were these people in all different walks of life who, I felt, SeatGeek honored and encouraged to be their whole [selves] both inside and outside of work,” Katie says.
SeatGeek is the live entertainment platform that’s rethinking ticketing by caring more about fans, teams, and venues. With their technological savvy and fan-first attitude, they’re simplifying and modernizing the ticketing industry.
Now as a Software Engineer, Katie uses creativity and design work in her coding process. “I use creativity more when I’m thinking about and planning code,” she adds.
“[On my team] we try to think about these big problems and break down those problems into smaller chunks and that process is so creative to me. We’re figuring out what needs to be solved and then designing some sort of solution.”
Advice on Using Creativity to Power Your Code
Creativity is a beneficial skill — one that Katie uses on a regular basis.
“In my job, I end up wearing many hats and playing designer when writing frontend code,” she explains. “It's always great when I'm able to collaborate with someone and have explicitly asked for design input on bigger projects, but when that's not possible, my design background allows me to still be effective and create user-friendly interfaces through conversations with stakeholders and an iterative design process.”
Katie emphasizes that everyone should identify their own creative processes and harness those when designing and writing code, but she offers this advice for those searching to vary that creative spark:
- When in doubt, draw it out. “This may not work for everyone but it works for me to have a physical pen to paper and be able to draw my ideas,” says Katie. “Whether you’re drawing a diagram or a doodle, it doesn’t have to be perfect. This process can reveal the weak points and help you focus and iterate on your ideas.”
- Be open to collaboration. Having open and casual meetings with other engineers can create the space for innovation. “I think that some of the most effective and groundbreaking meetings don't really have a plan other than ‘let's talk about this big idea and think about it,’” Katie shares. “Talking to other engineers during that unstructured design time is really helpful.”
- Do the big design work first. “Doing enough of the planning and design work ahead of time, I feel, lays the base to be more creative with the small things,” shares Katie. “Once you have the structural pieces in place, you can utilize creativity by getting feedback and bouncing ideas off of other colleagues to fill in the missing components.”
If you’re ready to apply creativity and design to solve big problems, check out the open positions at SeatGeek.