
I started my career writing code. Early on, I was fortunate to work on different types of software at several startups: networking, video games, financial services, and digital signal processing. I learned that working on design tools is the most satisfying for me.
I also realized I had a knack for seeing the “big picture” of the products I worked on, which led me to my first architect role. About ten years into my career at Adobe, my boss challenged me to take on a management role. I also served as Technical Advisor to the CTO for a time, which really helped me understand how technology, business, partnerships, and strategy play together. By the time I left Adobe ten years later, I’d graduated to managing architecture and technology teams. During that time, we built and shipped what is now Creative Cloud.
From those experiences I came to see how a strong software architecture practice is key to delivering high-quality cloud software with velocity. As Autodesk began to embrace its cloud strategy, the need to strengthen its architecture practice was clear; the Chief Architect roles were created, and here I am! Those experiences and the lessons I learned also became the basis for my book, Effective Software Architecture, which was published last year.
Building a better world
The most exciting part about my role as VP and Chief Architect is the opportunity to apply my software architecture knowledge to help Autodesk succeed! I’m very fortunate; this role checks all the boxes for me. Autodesk software helps our customers do their jobs in creating the built world around us, and what they do is amazing. Autodesk is also an ethical, well-run company that strives to do good and do well. And our leadership sees the value in investing in software architecture. Now, it’s up to me to demonstrate the positive impact that a well-run software architecture practice can have.
Three key items distinguish our software architecture practice at Autodesk:
- Leadership integration: Chief Architects sit at the same table with product development, industry strategy, and experience design. These different functions operate as one team with common goals.
- Structured process: Many software companies employ architects or even architecture teams, but sometimes they waste a lot of energy figuring out how to do their jobs or constantly re-negotiating their relationships with other teams. We want our energy to go into the work, which is designing software. So, we put a process around that to structure problem definition, prioritization, and decision-making. A good process reduces friction.
- Clear expectations: Our software architecture skills and expectations framework clearly explain what we expect of our architects. Software design skills are at its core, but it also explains that architects must work as part of the team, see their designs through, and ultimately be judged based on their ability to deliver value to customers.
Navigating the AI revolution
We’re in the midst of the second big technology disruption during my career, the first being the rise of the internet and cloud computing. This disruption is driven by advancements in machine learning (ML) models that can ingest and make predictions based on previously unfathomable amounts of data. This technology underpins generative AI and agents that perform simulated reasoning. And I think we’re just beginning to understand how and when to apply these models in our work, so it’s an exciting time to be in software.
These new, ML-based technologies also present a unique design challenge. For decades, we’ve worked primarily with deterministic algorithms. At cloud scale, there’s an element of randomness, to be sure, but a well-designed algorithm can still produce reliable, consistent, and correct results. Machine learning technologies don’t even try to do that; they’re inherently probabilistic. Here at Autodesk, we’re working to meld the potential of these technologies with tools built for an industry – Architecture, Engineering, and Construction (AEC) – that demands certainty. So that’s an exciting and formidable challenge for us all, architects included.
Guided by growth
At Autodesk, we recognize architecture as one of several areas in which software engineers can specialize as their careers develop. We have a well-defined software architect track that continues to our most senior levels. We also have a clear progression of roles, taking on greater scope and accountability. This framework is designed to give architects clarity on career growth and equip their managers to support those ambitions.
Our architects also work together within and across divisions, creating many opportunities to learn from others. A lot of what I’ve learned over the years came from the chance to work with and observe architects who were more advanced in their careers, so I try to create those same opportunities here for others. Sometimes, these are formal mentoring relationships, with mentoring being a great development opportunity. Often, they are informal. My (virtual) door is always open to anyone wanting to discuss their career!
Last but not least, the Chief Architects Council — that’s the five of us in Chief Architect roles across Autodesk — work to create opportunities for architects to stretch outside the day-to-day responsibilities of their jobs. Those opportunities might be a special project, speaking or volunteering at our annual technical conference, or participating in our twice-yearly technical leadership forum.
Solving complex problems, together
It’s been my experience that the best place for your career is the one where you connect with both what the work is and how that work is done. In other words, it’s about the challenges and the culture.
Autodesk is a tremendous place to hone your skills as a software architect working at “cloud scale.” We run large, complex, and globally distributed systems that solve hard and meaningful problems for our customers. As a mature company, we have the resources to invest in our software systems for the long term. These are exciting challenges! At the same time, what we do here is a team sport, and there’s only one Autodesk team. Collaboration and communication are just as critical as technical chops.
So, for me, Autodesk offers a great combination of challenges and culture. Other people might have different interests or preferences. But my advice is this: figure out what works for you. There’s more than one way to succeed.
My career in the software industry began just as software architecture started to come into its own as a role. It has been a privilege to grow my career as an architect during that time, to be part of the conversation about the role, and to contribute what I’ve learned to that conversation. Thank you for the opportunity to share some of that here!
Interested in a software architect role at Autodesk? Check out our current openings here!