浅谈.NET技术公司的实习生培养
浅谈.NET技术公司的实习生培养
背景
近几年.NET开发者市场的越发不景气,一毕业就选择.NET技术的开发者更是少之又少。一方面是公司效益的日益提高,一方面却是招聘优秀人才的速度总是赶不上公司发展的速度,这样的矛盾不断的倾轧着技术管理者的内心。
于是,从应届毕业生中挑选合适的苗子,加以培养,使之成为公司称职的储备力量成为当务之急。于是,这个过程最终变成了以下三个问题:
1、如何从应届生中招到对技术感兴趣的开发者。
随着近几年互联网浪潮的掀起,计算机已经成为毫无疑问的热门之王,每年都有大量的计算机专业毕业生蜂拥的加入这个市场。理论上讲,应该对企业来说,应该是极好招人的时候。然而,现状却很骨感。由于计算机信息技术的飞速发展,许多学校虽然开设了计算机相关课程,但这些课程其实都表现出老态龙钟的形态,越来越不合时宜。
也有一些学校选择了非常激进的方式,在学校开设了比较时髦的Python或人工智能相关的课程,但这些岗位的就业前景或许并没有想象中那么好。事实上目前吸引毕业生最多的计算机工作岗位,依然是看起来夕阳西下的传统信息化行业。(也许是我以为)。这些行业的技术也许没有那么新,使得在年轻人面前的吸引力也大打折扣,但这些都是表面现象。尤其是随着国家政策越来越关注新基建,看上去云厂商和互联网厂商越来越受欢迎,其实再细化到具体应用场景,依然是信息化。
其次,虽然计算机很热门,但是真正对计算机很感兴趣,愿意把计算机当作终生职业来奋斗的开发者,其实少之又少,那么多开发者,加入行业的目的,也许只是为了薅一波人口红利,在这种前提下,自然也很难要求那些来面试的开发者能够表现出在相关领域下受过的相关教育水平。
然而,即便如此,.NET相对于其他技术体系,例如QT、PHP还有更小众的语言来说,依然是一种主流语言,有时运气好,还是能找到一些不错的苗子。对于这些苗子,有时不能奢求他们一开始就啥都会,只要有一颗积极上进,熬得住,有一定的Java/C++语言基础,或许就是值得培养的对象。当然,相对于Java和Python与目前比较时髦的前端技术栈来说,选择.NET开发者可能较少,可能要求管理者花更多的心思了。。
2、如何找到有兴趣转岗到.NET的开发者。
找到苗子首先是第一方面,第二方面则是如何让他们有兴趣望.NET技术方向转型。这几年.NET发展得很快,许多技术书籍相继出版,但对于一些新手来说,他们的选择学习素材依然稀缺,以.NETCore的教材为例,目前尚缺乏一些能够符合国人阅读习惯,能够让之前不了解C#/.NET体系的、甚至对面向对象都不是特别熟悉的初学者快速上手的知识体系,这也阻塞了不少人的求学之路。虽然网上视频教程也很多,有的甚至很基础,但却不见得对每个初学者的胃口(必须承认,这也是一种淘汰方法)。
当然,有时悟性好的开发者不会遇到这种问题。。但这种人毕竟非常少,也许他们本身也不缺求职机会,或许不会那么想寻求.NET的工作岗位。大部分初学者,可能都没有那么强的悟性,对他们来说,真正的将大学教育涉及的知识与实战联系起来,还是需要很多契机。
有时,引发兴趣点,激起年轻一辈应届生内心对于极客的美好向往会是一种非常不错的体验。【DotNET骚操作】号主周杰同学分享过一个故事,他曾经在校招时,给许多初学者介绍了.NET的硬核技能,如华丽的特效,优雅的性能和代码,让一些对代码充满兴趣的Java开发者义无反顾的投身到.NET开发者中,成为了一段佳话。靠C#技术之美激起年轻辈的好奇心,确实是一种非常棒的方法。
3、如何建立一套可行的实习生培养方略。
就大企业而言,已经有一套完善的培养体系,能够让加入公司的新人以最快的步伐参与项目,但对于小公司而言,这一点依然非常匮乏。有时,难免依托老员工的传帮带作用来完成培养过程。小公司有时甚至会出现让新人提前加入到关键项目,成为冲锋在前的主力队员。
必须承认,通过项目压力让实习生们快速成长,固然是一种非常不错的激励手段,但也得承认,其实这是一种拔苗助长,毕竟每一个人都有其不同成长阶段,有的比较慢热,有的则比较急智,一味的要求快速出成果,可能会让团队陷入一种不太良性的发展节奏。对于普通人来说,如果过早的完成职业发展的阶段,则很容易陷入彼得原理的控制,最终可能会影响个人的长期发展。
在这一点上我亲身经历过,由于刚刚参加工作的前一两年表现优异,有一位只比我早一年参加工作的同事很早(工作第三年)就当上了部门经理,随后若干年技术就再也没有任何进步,虽然主导了一个公司从30人到70人的发展过程,但个人能力却越来越退步,哪怕后来有加入了更大的公司,在专业技能上却丝毫没有积累,工作五六年之后就只能完全脱离技术岗位,成为一位销售人员。
所以实习生的培养,依然需要短期目标+长期职业发展+个人性格和习惯的因材施教。对于未掌握C#基础的,也许应该以一种比较平滑的方式,让对方完成从新手到菜鸟的转变,并能体会到C#的妙处;对于初精C#的开发者,如何循循善诱的给他们引导,让他们完成技术突破时,又不断的激励,进而完成更好的项目。而这些策略,可能需要在培训上花不少功夫。
思考:如何让团队建设速度快起来
每到过年最难过的话题大概是员工离职,尤其对于许多小公司而言,过年之后往往都是一波换血潮。许多公司都是三分之一换血,更有超过一半都换血的情况发生。虽然有时候得承认,员工离职一般主要原因都是由于薪资,但这一点也恰好是小公司最羞于开口的一点。
受彼得原理的影响,许多大公司甚至乐于招聘小公司出来、具备优秀综合能力的管理型技术人才,而这些人才往往也是小公司的核心成员,人员的流失往往给企业带来的风险无异于断臂。所以团队建设的核心,最终变成了跟时间赛跑,既要稳定团队,又要不断的培养新人,让培养团队的速度能够一直赶超人才流失的速度。
塑造积极进取,乐于分享的公司团队氛围毋庸置疑是最好的法宝。通过知识分享机制,让所有成员都能积极收获到最优秀的生产力和方法,自然而然也形成了较强的凝聚力。
结语:.NET依然充满希望,欢迎广大有志青年来踩坑
最后,还是想跟各位年轻的朋友们好好谈谈,虽然没有太多互联网公司采用,但保有.NET技术岗位的公司依然许多。且目前不少.NET开发企业对于人才都存在较大的缺口,与其钻不上Java的门缝,不如来看看.NET的阳光大道。这里虽然不太可能干两三年就收获年薪百万,但往往都是非996+周末双休的美好工作在等着你。
选择.NET,你既能获得梦想,又能生活平衡,何乐而不为呢。
(尤其是.NET已经完成从.NET Framework到.NETCore 到云原生.NET的转型,Java和GO语言能干的,他一样也能干。同样都是先进生产力,也许其实有没啥高低贵贱之分呢。
浅谈.NET技术公司的实习生培养的更多相关文章
- 浅谈Hybrid技术的设计与实现第三弹——落地篇
前言 接上文:(阅读本文前,建议阅读前两篇文章先) 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 根据之前的介绍,大家对前端与Native的交互应该有一些简单的认识了,很多 ...
- 浅谈Hybrid技术的设计与实现第二弹
前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hybrid技术的设计与实现第三弹——落地篇 接上文:浅谈Hybrid技术的设计与实现(阅读本文前,建议阅读这个先) ...
- 浅谈Hybrid技术的设计与实现
前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hybrid技术的设计与实现第三弹——落地篇 随着移动浪潮的兴起,各种APP层出不穷,极速的业务扩展提升了团队对开发 ...
- 浅谈PHP技术应用
序号:1210-41 黑龙江省高等教育自学考试 本科毕业论文 题 目 浅谈PHP技术 学员姓名 夏滟 专 业 计算机及应用 准考证号 010311192585 指导 ...
- (转)浅谈Hybrid技术的设计与实现
转载地址:https://www.cnblogs.com/yexiaochai/p/4921635.html 前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hyb ...
- 浅谈Hybrid技术的设计与实现【转】
https://www.cnblogs.com/yexiaochai/p/4921635.html 前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hybrid技术 ...
- 横向浅谈移动技术------( 原生,混合,web --- 谁能问鼎移动开发的明天)
目前移动互联网基本采用了NativeApp.WebApp.HybridApp三种开发模式,很难说这三种模式那种更优越,目前的情况可以说是三分天下吧,不同的开发者可以根据自己的实际情况选择不同的开发模式 ...
- 浅谈数据库技术,磁盘冗余阵列,IP分配,ECC内存,ADO,DAO,JDBC
整理-----数据库技术,磁盘冗余阵列,IP分配, ECC内存,ADO, DAO,JDBC 1.MySQL MySQL是最受欢迎的开源SQL数据库管理系统,它由 MySQL AB开发.发布和支持.My ...
- 【ASP.NET 系列】浅谈缓存技术在ASP.NET中的运用
本篇文章虽不谈架构,但是Cache又是架构中不可或缺的部分,因此,在讲解Cache的同时,将会提及到部分架构知识,关于架构部分,读者可以不用理解,或者直接跳过涉及架构部分的内容 你只需关心Cache即 ...
随机推荐
- 二分查找——没有想象中的容易(详解各种变式,超深度理解,c++)
int binarySearch(int[] nums, int target) { int left = 0; int right = nums.length - 1; // 注意 while(le ...
- dataframe检查重复值,去重
flag = df.price.duplicated() # flag = df.duplicated() #参考:https://www.cnblogs.com/trotl/p/11876292.h ...
- LeetCode初级算法之数组:26 删除排序数组中的重复项
删除排序数组中的重复项 题目地址:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/ 给定一个排序数组,你需要在 ...
- 第三篇 Scrum 冲刺博客
一.站立式会议 1. 会议照片 2. 工作汇报 团队成员名称 昨日(24日)完成的工作 今天(25日)计划完成的工作 工作中遇到的困难 陈锐基 - 个人信息编辑后与组件关联- 表白墙数据用 Vuex ...
- Node:使用express搭建一个简易的服务器
①安装node环境 在node.js官网下载LTS长期支持版本,然后傻瓜式安装 ②查看是否安装成功 打开cmd终端,输入node -v 有版本号,则安装成功.再输入npm -v 有版本号,则npm也安 ...
- Linux 查看CPU型号,内存大小,硬盘空间的命令
1 查看CPU 1.1 查看CPU个数 # cat /proc/cpuinfo | grep "physical id" | uniq | wc -l 1.2 查看CPU核数 # ...
- C++ 虚函数表与多态 —— 虚函数表的内存布局
C++面试经常会被问的问题就是多态原理.如果对C++面向对象本质理解不是特别好,问到这里就会崩. 下面从基本到原理,详细说说多态的实现:虚函数 & 虚函数表. 1. 多态的本质: 形 ...
- Day4 dict和set
dict -- dictionary 一组key的集合,包含key与value的对应. Python内置的字典,在其他语言中称为map,使用key-value存储,具有极快的查找 ...
- Consul的使用
Consul的使用 生产部署中,Consul安装在要注册服务的每个节点上.Consul有两种运行模式:客户端和服务器端,每个Consul数据中心必须至少有一个服务器,负责维护Consul状态,为了 ...
- 工作流学习之 IDEA 使用activiti插件 出现乱码
今天学习 工作流 (work flow ) 的时候遇到了一点小问题 就是在 activitit的插件的时候 出现了乱码,弄了很久,终于解决了,就做个总结 嘻嘻 当场懵了,我记得我改了编码呀 - (Se ...