适合软件开发人员的良好基础架构设计问题?

Jak*_*son 3 untagged

基于Jeff题为Vampires (Programmers) vs Werewolves (Sysadmins)的博客文章

从我的角度来看,公司的全部意义在于谈论我们正在做的事情。把事情做好当然很重要,但我们必须偶尔停下来写下我们在做什么,我们是如何做的,以及我们为什么要这样做——包括我们所有的疑虑和疑虑和担忧。

那么,当您的软件开发人员请求服务器时,您会问他们哪些问题?

vor*_*aq7 10

一般来说,我问软件开发人员的问题与我会问其他任何人的问题相同:“你想在这里完成什么?” 以及我能提供什么帮助?.
再分解一下,给你一些开始你的想法:

  • 理想情况下,您应该从最高级的概述开始:
    公司的目的是什么?

  • 接下来的问题开始与系统管理员相关:
    技术如何帮助实现这一目标?什么样的技术将被使用?

  • 现在你可以开始谈论细节了。详细问题因技术而异,但常见的问题是:
    我们需要运行什么操作系统?(很多也取决于这一点)
    除了基本操作系统之外还需要哪些其他软件?
    系统必须有多可靠?(正常运行时间和冗余考虑)
    您将拥有多少用户?和其他与工作负载相关的问题

  • 然后是流程问题:
    我们多久部署一次软件的新版本?
    我们将如何获得这些新版本?(要构建的源代码?预构建的包?商业?)有
    哪些类型的测试套件可用?
    我们如何监控软件?(关键指标、可以自动化的检查等)

  • 最后是生产维护问题:
    软件需要什么样的日常维护?(如果此问题的答案不是“无”,则需要确定需要多少人力)
    可能会出现什么样的问题?我们怎样才能解决这些问题?