Are you an experienced developer keen to jump-start your way to becoming a software architect? Join this Software Architecture course and learn about pragmatic and real-world software architecture, rather than academic "ivory tower" software architecture.
Everything you learn will be reinforced through a series of hands on exercises, defining the architecture for a small software system. You will become far more architecturally aware and will learn to build much better software.
Learn how to:
- Align what you learn about software architecture to the responsibilities of a software architect
- Use the trade-offs that are made when making architectural decisions to your advantage
- Guide a bespoke software development project as an architect; including gathering non-functional requirements, determining the drivers for architecture and defining an architecture
- Use the smallest of architectural decisions to build better software
- Effectively incorporate coding into your role as a software architect
What the community says
"Very good tasks requiring involvement of everyone."Pawel Magrian, Javelin Group
"Austin has a deep subject knowledge and effective presentation skills as required for the workshop. It was very useful and I learned a lot and had FUN!!!"Attendee
"Austin [Bingham] has a deep subject knowledge and effective presentation skills as required for the workshop. It was very useful and I learned a lot and had fun..."Community Member
"I really liked the notes and slides. They are very well organised with good techniques and emphasis."Hussein Al-Helaf, Saudi Aramco
"Really like the way of providing the training and the activities involved."Rudra Dutta, Vocalink
What is software architecture?
- What is architecture?
- Types of architecture
- Design versus architecture
- Why do we need architecture?
What is the role of a software architect?
- How does a software architect fit in to a development team?
- How are software architects and lead developers different?
- What sort of skills does a software architect need?
- What does the overall role look like?
- How do you define software architecture?
- What drives software architecture?
- How do functional requirements drive architecture?
- How do non-functional requirements drive architecture?
- How do you design for non-functional requirements?
- How do constraints drive architecture?
- How do principles drive architecture?
- How do you design software given a blank sheet of paper?
- We'll define an architecture for a software system
- Case study (review and wrap-up)
How do you share software architecture?
- Should software systems be documented?
- Who needs to know about your architecture?
- How do you write a software architecture document (SAD)?
- What other methods are there for sharing architecture?
How do you deliver software architecture?
- When should a software architect be involved in a project?
- How does software architecture fit into iterative development?
- How does software architecture fit into agile development?
- How much software architecture do you need to do?
- How do you evaluate your architecture?
- What is load testing and how do you do it?
Discussion, questions and wrap-up
If you are a software developers and you are looking towards your first software architect role, or you are a developer and want to become more architecturally aware, or you are a software architects and new to the role, this Software Architecture for Developers course is for you!
To get the most out Simon Brown's Software Architecture for Developers workshop you will be a software developer looking towards your first architecture project, or a software architect new to the role.