乐趣区

关于java:程序员加入新团队必须知道的-20-道问题

不同的软件开发团队做事的格调也齐全不同。即便在同一家公司内,许多可变因素也会导致团队之间出现分歧。作为一名软件工程师,每当与新共事单干或开发新软件时,通常都会感觉十分兴奋。但在退出新的开发团队时,咱们须要思考一系列的问题。

技术层面

1. 如何在本地构建软件?

这是你应该理解的第一件事。毕竟,你的工作是开发和运行软件,构建是第一步!

2. 如何在本地测试软件?

尽管咱们能够通过 CI 流水线发现测试谬误,然而为了缩短外部开发循环周期,你必须可能在开发的机器上运行测试,确保你可能正确地运行测试,同时还须要执行回归测试。CI 流水线不应该成为测验代码谬误的第一道关卡。

3. 如何设置开发环境?

兴许团队文档中有明确的要求,但你应该理解须要在开发机器上装置哪些不同的工具,能力让你成为一名高效的团队成员。一次性解决 95% 的要求,总好过在开发的过程中一直遇到谬误和依赖项。

4. 源代码在哪里?

除了还没有编写任何代码的新产品以外,通常我的项目都有代码库。你须要晓得代码保留在何处,以及如何在本地机器上获取代码。

5. CI/CD 流水线在哪里,工作形式是什么?

对于一个可确保交付高质量产品的团队来说,CI/CD 流水线是最罕用的工具之一。你须要找出 CI/CD 流水线在哪里,并大抵理解它的工作形式(可能只须要到处点一点试试看)。查看一下最近的运行状况,理解都有哪些步骤。

6. 产品的待开发项在哪里?

你不仅须要晓得软件以后的情况,而且还须要理解软件将来的样子。疾速浏览待开发项,看看产品须要优先推出的性能。

7. 如何在预生产以及生产环境中运行测试?

有集成环境吗?团队是否采纳了金丝雀构建与部署?团队是否采纳了凌乱测试?理解团队如何确保生产软件合乎并放弃特定的规范。

8. 是否须要随时待命?

这个软件是否须要随时待命?如果需要的话,轮班机制是什么?失常办公时间以外是否也须要随时待命?在待命期间,如何获取告诉?通常如果不是遇到新组建的队伍,并被间接安顿上值班工作的话,在相熟这方面的流程之前,你不会接到紧急电话。

9. 外部文档在哪里?

团队保护的外部文档在哪里?这些文档都是如何划分的?是最新的吗?

单干

10. 团队中都有谁?负责哪方面的工作?

通常软件团队都有几位工程师。有的时候,每个工程师负责的工作都不一样,但这种状况并不常见。个别都由一个或几个工程师共同完成一个子项目。因而,你须要理解团队中每位程序员负责的工作。通常,你能够通过晚上的例会理解他们的工作内容。

11. 团队每周都有哪些例行会议?

每天早上都有例会吗?还是每周一次例行会议?你应该理解一下团队每周的例行会议。

12. 遇到“老手”问题,我应该找谁?

通常在刚退出一个团队的时候,都会给你调配一个“领导搭档”,这个人曾经在团队待了一段时间,理解团队的运作情况。这是一件十分重要的事件,尤其是你对新软件无所不知(或简直无所不知)的时候,你的问题能够十分低级。即便你是高级工程师,在遇到“老手”问题时,也不要感觉不好意思。

13. 新性能的决定权在谁手里?

产品有产品经理吗?工程团队有架构师吗?咱们应该理解性能申请的上游想法。如果可能跟这个人(产品经理)约个工夫,理解一下产品近期与长期的倒退打算就更好了。

14. 团队的次要沟通形式是什么?

他们应用 Slack?还是 Teams?或者通过电子邮件沟通?工程师通常会破费大量工夫探讨问题和进行其余类型的探讨。当然,作为团队的新成员,你也心愿退出这些沟通渠道。

内部因素

15. 如何取得客户的反馈?

咱们的软件是 GitHub 上的开源软件吗?咱们获取反馈的形式通过 GitHub 的议题吗?还是说由销售团队为产品团队获取客户的反馈?是否还有反对团队能够收集客户常常遇到的问题?换句话说,咱们必须理解获取客户反馈的形式:无论是通过其余平台、集体还是团队。毕竟,咱们是在为客户编写软件。

16. 客户的反对协定有哪些?

是否有咱们必须恪守的 SLA?咱们必须反对哪些协定?

17. 公开 / 客户文档在哪里?

这一点很重要。现在无论软件自身有如许好,咱们都须要确保客户文档的准确性与及时性。这些文档在哪里?如何放弃文件及时更新?是谁的责任?(心愿答案是“每个人”)。

产品

18. 软件有哪些高层面的痛点?

咱们必须晓得软件和团队是否面临一些重大问题。是否有一些因架构引发的问题?是否存在安全漏洞?是否有一些常见的客户问题重复呈现并须要解决?

19. 利益相关者关注的焦点是什么?

是否存在某个核心人物或其余团队心愿看到的性能?这些利益相关者往往会对软件的短期和长期路线图产生重大影响。理解他们关注的焦点就能够让你看清接下来的倒退方向。

20. 软件的公布周期是什么?

咱们必须理解软件的公布频率以及工夫。团队是否施行间断部署,每天都部署屡次?还是说一年只有两次公布?理解软件的公布日程能够让你更好地把握软件的开发节奏。

总结

对于大多数软件工程师来说,退出一个新团队与接触一项新技术是一个激动人心的时刻!咱们须要利用这段时间放松学习。心愿本文的这些问题可能帮忙你疾速地融入新团队!

作者 | Thomas Stringer

起源 | https://trstringer.com/20-que…

翻译 | 弯月 出品 | CSDN

近期热文举荐:

1.1,000+ 道 Java 面试题及答案整顿 (2021 最新版)

2. 别在再满屏的 if/ else 了,试试策略模式,真香!!

3. 卧槽!Java 中的 xx ≠ null 是什么新语法?

4.Spring Boot 2.5 重磅公布,光明模式太炸了!

5.《Java 开发手册(嵩山版)》最新公布,速速下载!

感觉不错,别忘了顺手点赞 + 转发哦!

退出移动版