曾经,希望自己以后能找个嵌入式方向的工作。就这样看来,我成功了——我工作后的职位是嵌入式工程师。只是,并非是我想象中的那种。那什么是我原来想象中的嵌入式工程师呢?
简单说就是Linux+ARM。我想很多像我一样在学校自学或者是参加一些嵌入式培训的同学都会和我有一样的想法,不得不说,Linux+ARM的确炒得很火,虽然的确在嵌入式市场,这个组合真的太多太多,应用特别广泛。可是,这并不代表Linux+ARM就是嵌入式的全部。工作以后,很遗憾,我的工作里面没有Linux,虽然有ARM但也用的不多。说实话,有一段时间,挺失落的。其实说实话,刚从学校里面出来,真的非常缺乏很多经验。而我不多的那部分经验还有大部分就是在Linux部分,而我本人也真的属于Linux狂热爱好者。但慢慢的,我的观念开始发生了变化。我发现,我的执念慢慢的在减少。我开始接受Windows方面的开发,我开始喜欢VS这个IDE,我开始觉得MFC也不错;我也开始接触FPGA,也慢慢觉得也挺不错的。而我对于嵌入式这门技术,这个行业,对嵌入式工程师这个职位有了新的认识。
正所谓,海纳百川,有容乃大。只要能解决具体问题,使用哪一种工具或是知识又有何妨。我现在觉得,如果开发者能有一点产品经理的思维,那他将会是一个更好的开发者。而另一方面,知识本来就没有优劣。前段时间,看到一个词,叫“Full Developer”,翻译过来叫全栈工程师,是facebook招聘工程师的一个标准。那什么是全栈工程师呢?就是从操作系统底层到上层开发,都懂。其实,有的人会说,样样会等于什么都不会,优秀的人应该学会专注。这一点,我并不反对。但是,我认为如果有多方面的知识储备,将有助于你在你擅长的区域做的更好。
所以,我现在觉得,嵌入式不光是Linux+ARM,它包含的知识太多太多。只要是工作中需要的,我就应该去学习。我应该摒弃执念,努力让自己成为一个全栈工程师