摘要:
测试一直是编程的一部分。 测试发展的核心是开发人员驱动的自动化测试实践。 自动化测试可以防止缺陷逃逸,这些缺陷可能会影响到用户。在开发周期中,一个缺陷被捕获的时间越晚,它的成本越高。 “捕获缺陷”只是做自动化测试的一部分动机。 另一个同样重要的原因是支持变更的能力。无论添加新功能还是进行保持代码健康 阅读全文
摘要:
使用适当的指标进行数据渠道决策。 依赖数据往往使大多数决策是客观的而不是主观的。 但是从人的角度收集和分析数据有其自身的挑战。 为什么要度量工程生产力 业务的大规模发展,需要增加额外的人员,也可以通过提高每个人的生产力来解决。那么我们就要学会如何提供工程师的工作效率。要做到这一点,我们需要了解是什么 阅读全文
摘要:
从领导一个团队到领导一一组相关的团队是一个自然的过程,如何能在工程领导力不但发展的道理上保持有效性。 随着角色得到发展变化,所有最佳实践任然使用,只能要解决的问题的范围变得越来越大,越来越抽象。 然后你越来越不能深入到技术或者工程的细节中去,你被推者去汪更广阔的领域,而不是更“深入”。你开始意识到你 阅读全文
摘要:
没有领导者任何团队都无法正常运作。 经理和技术主管 经验丰富的人员经理将担任管理职务,而经验丰富的高级工程师将担任技术主管职务。 技术主管 一个团的技术主管向团队的经理汇报,负责产品的技术方面,包括技术决策和选择、架构、优先级、速度和项目管理。 从个人共享到领导者 如果你的产品想要有所进展,无论是否 阅读全文
摘要:
工程师为广大用户设计产品时的独特职责,要做出更公平的产品设计。 人类的偏见 工程师应该关注到用户的国籍、种族、性别、年龄等等的差异,才可以不会让用户失望。 理解多样性的必要性 作为一个名优秀的工程师,需要关注将不同的观点带入到产品设计和实现中。 工程师应该首要把所有的工作集中在他们想要影响的整个生态 阅读全文
摘要:
一个组织往往应该比某个网上的人更了解该组织自身的问题,而且,他也应该能够回答他自身的大部分问题。 为了达到这一点,你应该了解到哪些专家能够解决这些问题,也需要知道如何将他们的知识分发出去的机制。 一个组织需要一种学习型文化,它能为员工创造一种心理安全感,让员工承认自己缺乏知识。 学习的挑战 缺乏心里 阅读全文
摘要:
我认为一个高效、成功的软件工程师需要把主要是时间花费在编写代码上,而不是整体都在与人沟通问题。 隐藏代码: 人们害怕别人看到自己的代码,因为有可能收到他人的批评。这种不安全感是一个更大的问题。 另一个隐藏工作的动机是担心别人窃取自己的想法并执行。 隐藏有害 软件开发中的协同和评审很重要,可以避免个人 阅读全文
摘要:
变成与软件工程之间三个关键差一点:时间、规模、权衡。 关注时间的流失和可能的需求变更 关注规模和效率 做出更多复杂且高风险的决策(这是由于对时间和增长的不精确估计导致的) 如果在软件的预期生命周期内,无论是处于技术理由还是业务理由,你都有能力对任何有价值的变化作出反应,那么你的项目是可持续的。 团队 阅读全文
摘要:
简单: git add '提交部分' git commit -m '提交信息' git pull git push 1、创建本地分支 git branch -b dev 2、切换分支 git checkout -b dev 3、临时本地保存更改内容 git stash save "临时提交" git 阅读全文