如何成为“菜鸟”程序员的导师

前言

在工程师的发展道路上,成为导师或许是一件光荣而有挑战的工作,也是很多工程师必须要经历的一个阶段,笔者结合自己的经历讲讲如何成为一名靠谱的导师。

导师的目标

Solution implementer-->Problem solver

Solution Implementer: 方案实现者,关注将方案转换成代码,新人往往处于这个阶段,他们对开发环境以及工具框架都需要熟悉。这个阶段积极的反馈和引导,让他更多的思考方案决策的原因。

Problem Solver:解决问题的人,这个阶段的人能够更多的针对问题通过思考,给出合理的答案。

导师的目标是引导新人胜任solution implementer 并努力转变成 problem solver,有能力独立面对问题并找到合理的解决方案。

做导师该注意什么?

及时反馈

导师需要明确且直接的反馈自身对新人的期待,以及要求。该做什么,不该做什么。

针对新人做的好的地方,在正式的场合给予表扬,新人做的不足的地方,私下及时指出。

有些事情在新人眼中很模糊,所以必须要及时的纠正,不要因为反馈不足而养成不好的习惯。

Teach them how to teach themselves.“授人以渔”

新人培养要围绕提升其自学能力为目标,授人以渔。比如在回答新人问题的时候,有意识的告诉他,你是怎么找到思路解决问题的。

遇到问题要去哪些网站查,第一时间应该先找出现问题模块的文档,还是要借助Google来搜索,搜索的过程中如何确定关键字等等。

自学能力是新人阶段最需要关注并花时间培养的。

有意识的培养习惯意识,提出要求

习惯决定了一个人的行为,要有意的培养其良好的习惯。

比如按时交付,提交整洁的代码,动手前先讨论技术方案,上线前同上下游周知等等。

新同学的可塑性比较强,几次不良习惯纠正一下马上会有反馈。

针对智能支付业务而言,线上质量意识,细心的习惯都是至关重要的,需要有意识的培养。

把握授权的"度"

不要过于高估新人的能力,授权其超出能力范围太多的任务。

前面提到新人多数为Solution Implementer,因此要循序渐进的分配任务,不要一开始就让其处理较复杂的Problem。

一方面一旦出现失误可能对业务产生影响,另外一方面对于新人的信心建立也会起到阻碍的作用。

Keep away from their keyboard.

针对某项任务不能因为新人无法完成就直接上手自己搞定,虽然从短期来看问题能够更好的解决,但新人无法更好的成长。

不要让自己成为新人的backup,“这个事情我搞不定没关系,导师会最终帮我搞定的”这类的想法一定要避免出现。

暂缓给出答案

当新人有问题来请教的时候,可以考虑在思路上对其进行引导,而不是直接给出答案。

新人的工作经验以及技术能力一定不及导师,因此某些问题可能导师第一时间能根据经验得到答案,但这种情况下要“暂缓给出答案”。

这样做的好处在于:

  1. 新人可以根据导师给出的思路继续思考问题,思考的过程中可以对问题得到更深的理解。

  2. 相同问题再次遇到的时候,新人便可以尝试套用之前给出的思路进行思考,能更加顺利的解决问题。

导师的关键在于“导”,所以更多的针对解决问题的思路进行指导,引导。

总结

如果有更多希望交流的地方,欢迎留言?

参考

https://softwareengineering.stackexchange.com/questions/138396/how-to-mentor-a-junior-developer

https://www.youtube.com/watch?v=yIPbE7BssOs&t=786s

https://www.youtube.com/watch?v=qAMJASlrPjM

(图片来自网络,如有侵权,与我联系。)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值