• IEEE.org
  • IEEE CS Standards
  • Career Center
  • About Us
  • Subscribe to Newsletter

0

IEEE
CS Logo
  • MEMBERSHIP
  • CONFERENCES
  • PUBLICATIONS
  • EDUCATION & CAREER
  • VOLUNTEER
  • ABOUT
  • Join Us
CS Logo

0

IEEE Computer Society Logo
Sign up for our newsletter
IEEE COMPUTER SOCIETY
About UsBoard of GovernorsNewslettersPress RoomIEEE Support CenterContact Us
COMPUTING RESOURCES
Career CenterCourses & CertificationsWebinarsPodcastsTech NewsMembership
BUSINESS SOLUTIONS
Corporate PartnershipsConference Sponsorships & ExhibitsAdvertisingRecruitingDigital Library Institutional Subscriptions
DIGITAL LIBRARY
MagazinesJournalsConference ProceedingsVideo LibraryLibrarian Resources
COMMUNITY RESOURCES
GovernanceConference OrganizersAuthorsChaptersCommunities
POLICIES
PrivacyAccessibility StatementIEEE Nondiscrimination PolicyIEEE Ethics ReportingXML Sitemap

Copyright 2025 IEEE - All rights reserved. A public charity, IEEE is the world’s largest technical professional organization dedicated to advancing technology for the benefit of humanity.

  • Home
  • /Publications
  • /Tech News
  • /Build Your Career
  • Home
  • / ...
  • /Tech News
  • /Build Your Career

Careers in Software Architecture: Advice from an Expert

By Lori Cameron

By Lori Cameron on
September 30, 2020

software architecturesoftware architectureFor this career article, we interviewed Eoin Woods, chief technology officer for Endava, a global technology company that works with some of the world’s leading finance, insurance, telecommunications, media, technology, and retail companies.  He authored the article “Software Architecture in a Changing World," which appears in the November/December 2016 issue of IEEE Software magazine. Woods is also the editor of the “Pragmatic Architect” column in IEEE Software. We asked Woods about careers in software architecture.

ComputingEdge: What types of tech advances in the field of software architecture will see the most growth in the next several years?

Woods: There are two aspects to “software architecture”—the process of how we design architecture for a system and the technologies we use to build systems.

The process of software architecture has been studied since the mid-1990s and I think that the rate of new ideas about how we design, analyze and capture architecture is slowing down a bit.  There are still new trends emerging though, like architecture being seen as a flow of decisions, rather than an activity to produce “an architecture,” as illustrated by Eltjo Poort’s Risk and Cost Driven Architecture (RCDA) approach.  There are also emerging ideas in how we create architectures that evolve gracefully over time.

When we consider the technologies we use for implementing our architectures, it varies by domain.  But in my world of enterprise, digital, and Internet systems, the big technical themes in the next few years are going to be the continued use of microservices, the maturing of container and serverless technologies and the integration of intelligence into everyday commercial systems.

ComputingEdge: What advice would you give college students to give them an advantage over the competition?

Woods: Make sure you understand the fundamentals and worry less about the technical detail of a particular piece of technology.  You do need to know the details of a software development stack to create software effectively.  However, for some people, that is all they learn.  In fact, you can be sure that what you use today will be replaced in 10 years’ time, so understanding the fundamentals of topics like modelling, distributed systems, data management, AI, algorithms, and general problem-solving approaches will be of much more lasting value.  Also make sure you remember that everything in industry involves working with other people, so don’t neglect communication and team working as you develop your deep technical knowledge.

ComputingEdge: If a graduate has the ambition of eventually being a freelancer, or independent contractor in the field of software architecture what are some tips for moving in that direction?

Woods: The most important thing for future software architects is to get a really good understanding of how to build high quality, effective software.  So concentrate on becoming a really good software development engineer first.  Beyond that, start studying the field of software architecture to understand it.  Consider how it relates to the process of building the individual modules of the system. Start trying to understand the “big picture” context of your work as early as possible.  Who is going to use your software?  Who are the other stakeholders?  What are they trying to achieve?  How does the overall system work and why?  What are the critical quality properties that your system must achieve and how does your module assist in achieving them?

ComputingEdge: Name one critical mistake for young graduates to avoid when starting their careers?

Woods: Avoid over confidence based on excellent academic results.  A good degree in a software engineering subject is priceless, but until it is combined with some solid experience, it is often hard to know how to apply that knowledge effectively.  This is certainly a mistake I made early in my career!

ComputingEdge: Do you have any learning experiences you could share that could benefit those just starting out in their careers?

Woods: It sounds like a contradiction, but try to learn broad and deep subjects.  What I mean is that you need to specialize in one or more topics and become expert in them in the early years of your career.  However, don’t lose sight of the breadth of the field and try to understand the fundamentals of other relevant areas.  This is what creates a rounded professional engineer over time and builds the kind of knowledge that allows us to be lifetime learners and adapt as our industry changes.


About the Author


ComputingEdge’s Lori Cameron interviewed Woods for this article. Contact her at l.cameron@computer.org if you would like to contribute to a future article on computing careers. Contact Woods at eoin.woods@endava.com.

LATEST NEWS
Quantum Insider Session Series: Practical Instructions for Building Your Organization’s Quantum Team
Quantum Insider Session Series: Practical Instructions for Building Your Organization’s Quantum Team
Beyond Benchmarks: How Ecosystems Now Define Leading LLM Families
Beyond Benchmarks: How Ecosystems Now Define Leading LLM Families
From Legacy to Cloud-Native: Engineering for Reliability at Scale
From Legacy to Cloud-Native: Engineering for Reliability at Scale
Announcing the Recipients of Computing's Top 30 Early Career Professionals for 2025
Announcing the Recipients of Computing's Top 30 Early Career Professionals for 2025
IEEE Computer Society Announces 2026 Class of Fellows
IEEE Computer Society Announces 2026 Class of Fellows
Read Next

Quantum Insider Session Series: Practical Instructions for Building Your Organization’s Quantum Team

Beyond Benchmarks: How Ecosystems Now Define Leading LLM Families

From Legacy to Cloud-Native: Engineering for Reliability at Scale

Announcing the Recipients of Computing's Top 30 Early Career Professionals for 2025

IEEE Computer Society Announces 2026 Class of Fellows

MicroLED Photonic Interconnects for AI Servers

Vishkin Receives 2026 IEEE Computer Society Charles Babbage Award

Empowering Communities Through Digital Literacy: Impact Across Lebanon

FacebookTwitterLinkedInInstagramYoutube
Get the latest news and technology trends for computing professionals with ComputingEdge
Sign up for our newsletter