今天用了将近1个小时的时间,跟准备来华清远见参加嵌入式Linux工程师就业培训课程的一名在读研究生(电气自动化专业)进行了电话交流。电话沟通过程中能够充分体会到他的诸多困惑和无奈。而静心回想之后发现这些问题往往是在校大学生共同的疑惑,所以抽了点时间把这些问题整理出来和大家一起交流分享,希望能够对那些正准备向着嵌入式行业,特别是嵌入式Linux方向进发的朋友们有所帮助(仅代表本人个人观点,欢迎大家拍板砖或递鲜花,呵呵!)
[b]
1、参加嵌入式Linux学习的人都是什么专业的? [/b]

一般来说,在嵌入式行业中从事嵌入式产品研发的人往往来自这样一些专业:计算机、电气,自动化,微电子,电子信息,通信,机械等相关专业。而非常有意思的是随着最近几年医疗仪器智能化需求的增长,许多理工类院校开设的生物工程专业实际上也开始涉足嵌入式行业相关人才培养的范畴,其专业基础课的设置,例如:微机原理、操作系统等往往跟计算机相关专业的相同。

[b]2、参加嵌入式Linux学习的人需要准备哪些方面的基础知识? [/b]
目前在华清远见嵌入式学院嵌入式Linux工程师的就业班中也基本上都是来自以上提到的这些专业的同学。由于他们在大学里面不同专业基础课的设置,所以在准备学习的过程中需要根据实际情况有不同的侧重。

一是程序设计的基础,例如:基本的编程语言基础,至少对数据类型、程序的结构及流程控制等最基本的内容要相当清楚,所以建议恶补一下C语言,呵呵!另外有不少同学都问到数据结构的基础,我一直认为数据结构和算法的学习是帮助形成程序设计逻辑思维的很好训练方式,对于程序员的长期专业素养的提高一定有好处,所以建议即使已经在嵌入式行业中工作之后也应该多补充一些相关的知识。许多在学校没有学过数据结构的同学往往认为这部分非常枯燥、难学。而实际上如果你能明白研究计算机存储和数据组织方式的意义,就一定能够充分体会到数据结构的价值和魅力。一旦兴趣有了,一切就会迎刃而解,呵呵!

二是操作系统工作原理,这部分往往是非计算机专业的同学在学校时没有接触过的。而由于嵌入式软件设计相关的多任务环境、模块间的同步与通信协同、驱动设计等往往都需要有对操作系统工作机制的了解和掌握作为基础,因此建议没有系统学习过的同学,找一本相关的操作系统工作原理书籍认真看一下(不用特厚、特专业、特内核的,先以普及知识为主,呵呵!)。

三是基本的硬件基础,由于嵌入式Linux开发往往是ARM+Linux路线,所以为了能够在后续培训过程中很好地掌握主流嵌入式微处理器的结构与原理(例如:ARM9),就需要对硬件工作原理有初步的了解和掌握,建议看一下诸如计算机组成原理、体系结构等相关的专业书籍。

[b]3、行业中对学历有什么特殊要求吗? [/b]

电话中的那位同学有点后悔自己读研究生,认为现在硕士毕业后拿到的工资和本科毕业生并没有想象中那么大的差距,而另一方面当年本科毕业直接进入行业的同学的收入已经与日俱增。而我一直都坚定地认为:如果是为了回避就业压力而选择继续读研究生的话,的确不能最终真正地解决问题。

在招聘的过程中,对于企业而言无外乎关注你两个方面的情况:一是目前的技能水平,二是未来发展的潜力(说白了就是你的学习能力和适应能力,你的增长空间和速度)。对于嵌入式Linux这个较新的领域更是如此,这也是四、五年前一些嵌入式企业在招聘时往往需要较高学历毕业生的原因。因为既然不能马上达到上手工作的技能要求,那就退而求其次招聘传统意义上的潜力股了,呵呵!

而随着这几年行业的迅猛发展,人才需求的快速增长,同时诸如像华清远见这种专注于嵌入式专业知识普及和推广的公司的建立以及培训体系的不断完善,有越来越多的在校生有机会系统学习嵌入式开发相关的知识,并经历全真的项目实战训练。这就使得嵌入式企业在进行招聘时有条件去更多关注应聘者解决实际问题的能力,因此之前学历要求比较高的情况已经不复存在。

目前的实际情况是只要是相关专业的大学毕业生,经过系统地培养和训练,就有机会从事相关的工作。这一点在华清远见嵌入式学院推荐给企业的毕业生构成中也有所体现。

[b]4、是选择自学还是选择参加培训班进行学习? [/b]

或许是一些不规范、不负责任的培训机构的某些做法让大家伤了心吧,许多同学在跟我们沟通的过程中都表达出了担心和顾虑,同时也希望能够通过自学的形式顺利进入到嵌入式行业中。

我一直认为像华清远见这种专门从事嵌入式人才培养的机构,所能起到的最直接作用是帮助大家缩短摸索的时间,提高专业学习的效率。而特别需要提醒的是学习的艰苦过程还是需要大家自己来经历、来努力,华清远见这些专业讲师所能提供的帮助只是把大家原来那种不知深浅、不知方向的摸着石头前行的方式替换为目标明确、有人引领、随时纠正指导的方式。

毕竟自学和摸索的过程是需要更强的自我控制能力的。或许大多数情况下有一个合适的学习氛围,有一个随时提醒指导的良师在旁边会更容易帮助大家进入学习的状态。有句话我一直都非常[b]赞成:在成长的路上,最重要的一点是你选择与谁同行。

5、是毕业前参加学习还是毕业后? [/b]

这个问题我个人有着非常明确的选择,如果你打算参加学习,那请务必在毕业前给自己调整出一段时间来,因为“你追着时间走”的感觉和“时间追着你走”的感觉真的不一样。

举个简单的例子,在华清远见嵌入式学院嵌入式Linux的就业班里面,既有今年准备要毕业的同学,也有去年已经要毕业的同学,我们能够明显地感觉到他们的心态和学习的状态是不一样的。已经毕业的同学在参加学习的过程中实际上要面对来自内心和周围环境的更大压力,毕竟在亲身经历和面对了就业压力之后,在同届的同学开始陆续工作的时候,他们要更多地面对“被时间追着走”的局面,强烈建议大家给自己留出更充裕的学习时间,一个更从容的学习心态(至少在校期间的暑假、寒假的时间一定要想办法利用吧,少玩会儿游戏就行,呵呵!)。
[b]
6、嵌入式Linux的入行门槛是不是比较高? [/b]

由于对嵌入式行业的不了解,在大家的认识中一定认为嵌入式行业的入行门槛那是相当得高。可是哪个行业没有入门的门槛呢?实际上随着飞速的发展,今天的嵌入式行业已经不像许多人所认为的那样高不可攀了。特别是随着嵌入式知识的日益普及,嵌入式专业“亲民的脚步”真的是走得越来越快,呵呵!如果说之前是因为嵌入式领域较新,发展太快,大多数人无条件接触,隔着层纱对话的话,那么现在大家就有了更多地机会走进嵌入式。

许多参加华清远见嵌入式技术普及讲座的朋友,在走出讲座现场后才明白无所不在的嵌入式技术早就已经渗透到我们周围的各个角落。你可以依然选择“外行看热闹”的感觉,但相信未来“内行看门道”的成就感一定可以让你觉得更加快乐。 

[b]让我们一起向着前方,目标“嵌入式”出发![/b]