• by javamantra on 8/28/2020, 1:41:17 AM

    Aspect I like most: Communicate the solution. Draw lots of pictures to standard models, maintain many views to cater to different stakeholders and relentlessly communicate the solution.

    Most architectures fail at integration points. so focus on interfaces first. The way to build acceptance is to distribute ownership of various aspects of the architecture across the team

    How to evaluate the architecture and your own effectiveness - The product is delivered on time and within budget

    Identifying key requirements - Strength (NFRs) - Functionality - Elegance (Documentation, clean code, multiple visual models)

    The architect should know the cost of building each and let stakeholders decide the priority. If the arch believes the choice is wrong he/she should challenge that but understand that politics will decide the choice. In which case document and move on.

  • by 1ba9115454 on 8/28/2020, 8:26:09 AM

    My main learning as an architect for over 10 years.

    The best architectures come from teams not individuals. If you don't have buy in from the team, you will fail. Listen to them, some will need your help, some won't.

    The boxes you draw on a white board won't survive 5 minutes when real development starts. Make sure you have used the tech yourself either previously or via a PoC before you recommend it.

    Complexity is the enemy, make it simple. It's very easy to add complexity but almost impossible to remove it again once it hits production. Production turns software into concrete.

    Document the team decisions in a architecture decision record. https://github.com/joelparkerhenderson/architecture_decision... This will really help the next set of developer who are trying to figure out why you did what you did.

    Setup your CI/CD pipeline very early on. Make sure testing is integrated including browser testing if applicable.

  • by maps7 on 8/27/2020, 10:14:48 AM

    - No design is ever perfect

    - There are many correct ways to do things

    - It's all about constraints and trade offs

  • by rails on 8/27/2020, 3:15:17 PM

    - Reduce risks early on

    - Trade offs, everything is a trade off

    - Make desicions easy to change later