我很幸运,我的软件架构角色中有相当部分的实践元素,大多数我参与的项目都有我的代码。我坚定地认为,机会是自己创造的。我仍然动手实践的原因可以这样表述:它是这个角色的重要组成部分。对我来说这很简单。设计软件时,编码是必不可少的,因为我需要熟悉最新的技术,搞清楚我设计的哪些东西能工作。另外,我得承认编码很有趣。
可惜,许多组织似乎认为编码是软件开发过程中最容易的部分,因此他们通常让另一个国家的其他人来做这件事,以为这样能省钱。好的代码在这样的组织看来也是“低价值”的。组织中软件架构师的资历和编码工作的价值就脱节了,矛盾由此产生。
以我的经验,小组织不会发生这种事,因为需要人手时每个人都要参与进来。是的,那些大型组织里的矛盾最严重。我曾在一个中等规模的咨询公司工作过一段时间,我的职位等级把我归入管理团队,但我仍会写代码。在某些方面,顶着“行政经理”的头衔,又能每天写代码,真是了不起的成绩!但有时这也让人很不舒服,因为其他经理经常会试图在其组织架构图里加上我的名字。
陷入这种情况是很麻烦的,只有你自己能摆脱它。无论你是在一个正在发生这种事的组织,还是想要离开是非之地,都要搞清楚你对软件架构师这个角色 的看法,并准备好坚守自己的立场。