架構先決
架構的目的在於彈性管理與降低風險,不管是建築工事或是軟體建置的領域都通。重構或重寫 (系統打掉重練),都有固定的心法。
至於如何判定對方是否是一個優秀的救火架構師。很簡單的方法,可以先看對方的技術含量,嘴砲型的就應當讓他留在學術界就好,
一、有沒有做過大型系統。
寫過小網站不算,即使 PV (PageView) 上百萬也一樣,有人隨便寫個美女圖網站也能衝上這個量,但技術含量根本不高。雲端?對有些人來說,只是應用現有雲服務而已,可惜很多企業不是自建雲就是因某些原因不走雲。而且不是會 Amazon AWS 就是懂雲端懂 Scale Out。
二、有沒有做過救火隊。
很多「架構師」只做過從無到有的建置,完全沒有 Large Legacy System 的接觸經驗。看不看得懂有經驗工程師寫的神級程式?看不看得懂無經驗工程師寫的無字天書?救火隊的 SOP 流程是什麼?你該向對方索取什麼資料、問什麼問題?
三、有沒有夠深夠廣的知識。
只會 RoR ?可惜今天要救的火是 Java / .NET。不懂資料庫?咦,你怎麼還站在這裡。不懂作業系統、前端或後端也都不合格。
除了技術外還有可能有法規議題,甚至資訊安全問題。ISO 27001 ?個資法?資訊安全防護及監測?
以上主要只談到技術上的軟體系統架構。對於營運,你可能還會面對經營架構、法務架構、募資架構等。但無論哪種架構,【架構先決】都有心法的。