Engineer Architecture study materials
Engineer Architecture study resources

Engineer Architecture: Professional Practice, Ethics, and Communication

Engineer Architecture · Work through your exam, one topic at a time.

All guide sections

Professional Practice, Ethics, and Communication

What this domain tests

This domain tests judgement: obligations to the public, client, and profession; handling conflicts; and explaining architecture to different audiences.

Core rules

  • The ACM/IEEE-CS Software Engineering Code of Ethics orders obligations: public, client and employer, product, judgement, management, profession, colleagues, self. When they conflict, public safety and welfare rank first.
  • Distinguish legal compliance from ethics; something can be lawful and still unethical, such as dark patterns or silent data collection.
  • Handle conflicts of interest by disclosure and withdrawal from the decision, not by private balancing.
  • Know the licence boundary: copyleft (GPL) can oblige release of derivative source; permissive licences (MIT, Apache-2.0) impose notice duties, with Apache-2.0 adding a patent grant. Licence compatibility is an architecture decision with legal consequences.
  • Communication is a design skill: give executives outcomes and options, developers interfaces and constraints, operations runbooks and SLOs. Present at least two options with trade-offs rather than one recommendation.

Worked example

A vendor offers a large discount if its proprietary analytics module is embedded. The module ships personal data to the vendor's cloud, which the regulator has not approved, and its licence forbids independent security testing. Correct response: disclose the concern in writing, quantify the risk, propose alternatives (self-hosted, anonymised pipeline), escalate through governance if overruled, and record the dissent in the decision log. Refusal is not the only professional option, but silent acceptance is not one.

Traps

  • Treating "the client asked for it" as ethical cover.
  • Confusing confidentiality with withholding risks from those who need them.
  • Assuming licence compatibility; verify it, because it blocks or enables architecture choices.
  • Reporting a single option as though it were the only one, and omitting assumptions.