Course: Software architecture development

The speaker received trainings on SEI practices and TOGAF, certified icAgile specialist, AWS accredited specialist; led departments with more than 250 engineers and large programs of more than 100 engineers
Online
Event is over
Course: Software architecture development
Course: Software architecture development
Event is over
Event is over
Event is over

Buy tickets for the next conference Highload fwdays'24 conference!

If you have ever asked yourself the following questions in your life:

  • What will be my role and what will be expected of me as an architect?
  • Why is architecture important and why can we go to code right away?
  • How to start developing architecture, what standards/methods/practices exist?
  • What should be included in the architectural documentation?
  • How to properly justify my chosen components, technologies and approaches?
  • What should I do as an Architect during architectural implementation and how can I measure architecture after implementation?

Then this course is for you.

In the course you will be able to gain knowledge in the field of software architecture development; structure the already acquired knowledge; see where architecture begins, what approaches/standards/practices exist; gain practical skills from defining business goals and architectural drivers to the design and architectural documentation.

We will start from fundamentals topics (e.g. what is architecture? ISO ISO/IEC/IEEE 42010; role and common activities of architect) and cover all phases of architectural development lifecycle: defining of architectural requirements, architectural design, documentation, implantation and evaluation. We will acquire a lot of approaches and methodologies that can help in the creation of architecture.

During the course, in addition to the theoretical part, we will consider a practical case where participants can create their own architecture. This will make it possible to consolidate theoretical knowledge as much as possible, immediately in practice.


Level of audience

The course is for:


  • Software developers and technical leads

    who want to understand software architecture design methods and principles and be an Architect

  • Architects, technology consultants

    who want to find new approaches and structure their knowledge

  • Engineers

    Back-End/Front-End/Mobile/DevOps/SRE/Data/QA

  • Business and system analytics, engineering managers
  • Anyone

    who wants to know about software architecture development methods

Trainer Oleksandr Savchenko

— more than 13 years in IT; Winner of Ukrainian IT Awards in category Software Engineering in 2019 and member of jury in 2020;

— SEI, TOGAF trained specialist, ICAgile Certified Professional, AWS accredited specialist;

— speaker on different global conferences, meet-ups, workshops and actively leads the engineering communities; went from developer to technical lead, architect, director, head of departments;

— managed departments with more than 250 FTE from different locations. Led big programs (more than 100 engineers) from different business domains, modern technology stacks and complexity;

— participated in partnership programs with other IT companies (e.g. AWS, Microsoft, Google Cloud Platform, SensioLabs);

Video invitation from Oleksandr Savchenko to the "Software architecture development" course

Common Information

The course starts on January 24, duration — 2 months. The course will be held in Russian, all presentation materials are in English.

We will open the video on the Podia training platform every Monday, from January 25 to March 21. Q&A sessions will begin on February 3 and run until March 24 (every Thursday).

Please note that during the course, some materials will be downloaded to Google Drive, so please use e-mail with the domain gmail.com.

The course includes:

  • More than 20 hours of video content;
  • Downloadable resources and materials (e.g. presentations of course sections, architectural documentation templates, checklists, etc.);
  • 8 modules;
  • Modules structure:

  • Theoretical part (video);
  • Reference materials;
  • Quiz to check theoretical knowledge;
  • Practical guide (video);
  • Homeworks - a real case that will give you a try in practice of reusable approaches and practices of course.

Required knowledges:

  • experience in software development/architecture, software delivery
  • basic knowledge on architectural patterns (e.g. microservices, SOA) and technologies
  • basic knowledge on UML
  • engineering English

Program

1. Software Architecture Fundamentals.

  • First look into Software Architecture.
  • What is Software Architecture and why is it important?
  • System and Software Engineering — Architecture description - ISO/IEC/IEEE 42010.
  • Architectural taxonomy and common definitions.
  • Architecture development lifecycle fundamentals.
  • Architect’s types of engagement, roles and responsibilities.
  • Architect’s skill set.
  • Architectural skills improvements.
  • Architecture in practice (Architectural Katas).

2. Analysis of Architectural Requirements.

  • Common challenges in obtaining information from stakeholders.
  • Elicitation process & techniques.
  • Architectural Significant Requirements overview (Objectives, Concerns, Constraints, Quality Attributes).
  • Quality Attributes overview and process of scenarios defining.
  • Client first contact activities and discovery phase.

3. Architecture Development Reusable Methods.

  • КTrade Offs.
  • Delivery Frameworks & methodologies (ITIL, SAFe).
  • Architecture-Centric Design Method (ACDM).
  • Component-Based Architecture (CBA).
  • Hypothesis Driven-Development.
  • TOGAF;
  • ADD;
  • Microsoft Application Architecture Guide.
  • Federal Enterprise Architecture Framework.
  • RUP;
  • Zachman;
  • From Requirements to Decisions (preparation before design):
    • Choice of methodologies;
    • Architectural roadmap;
    • Preparation of architectural principles.

4. Architectural Design.

  • Architectural design concepts and roadmap (architectural continuum).
  • Reference Architectures.
  • Deployment Patterns.
  • Architectural Patterns/Styles catalogs.
  • Architectural Patterns/Styles overview:
    • Application level (e.g. Layered, Hexagonal, Micro-Kernel, etc.);
    • Service level (e.g. Microservices, SOA, Service-Based, etc.);
    • Integration level (e.g. Event-Driven, API Gateway, etc.);
    • Data Management level (e.g. Shared DB, DB per Service, Saga, CQRS, Event Sourcing);
    • Data level (e.g. Pipes-and-Filters, Raw Data Load, ETL);
    • Cross-Cutting level (e.g. Service Discovery, Circuit Breaker, etc.);
  • DDD
  • Architectural Tactics.

5. Architectural Documentation.

  • Architecture Documentation fundamentals.
  • UML;
  • SEI Views & Beyond;
  • Kruchten’s 4+1 View Model.
  • C4 model.
  • ADR’s.
  • Architecture documents templates (e.g. SEI Views & Beyond,
  • ISO/IEC/IEEE 42010, TOGAF).
  • Architect tools for creating architectural views and documentation.

6. Architectural Implementation.

  • Architectural Implementation process.
  • Architectural governance.
  • Architectural change management.
  • Team composition, choosing of delivery methodologies and scope preparation.
  • Setting up software development processes.
  • Data Governance.
  • Test Strategy.
  • Hypothesis driven-development during implementation.
  • Fitness functions.
  • DevOps/SRE culture.
  • Release cycle and approaches.
  • Creation of evolutionary architecture (e.g. from mono to micro, component update process, etc.).

7. Architectural Evaluation.

  • Fundamentals (from preparation to presentation of results; common phases and methods).
  • Scenario-Based Evaluation methods (ATAM, CBAM).
  • CMMI;
  • Cloud solution evaluation tools.
  • Continuous code/architecture review process.

8. Conclusion and Learning Materials.

  • Summary of the course.
  • Learning fundamentals.
  • Architect skills & career path.
  • Business domains overview.
  • Technology organisations that drive evolution of architectural methods and approaches (e.g. SEI, Open Group, O’Reilly, Thoughtworks, IBM, Microsoft, AWS, GCP, Facebook, Netflix, NGINX, etc.).
  • Technology Trends (e.g. Tech Radar, reports from Gartner/Deloitte/McKenzie).
  • Online courses for increasing architectural knowledge.
  • Conferences.
  • Books overview.
  • Useful links and reference materials.


I've already been to Oleksandr's workshop, is it worth joining the course?
At the workshop you have got the main theoretical basis. After receiving your feedback, we tried to make the workshop more detailed and add more interaction with the trainer and then we realized that this is a full course. Therefore, if you really lacked that interaction and still have questions, consider the "Standard" and "Premium" tariffs.

Course overview:

Sign in
Or by mail
Sign in
Or by mail
Register with email
Register with email
Forgot password?