作为一只程序猿,我要说说IT业的研发工程师!

作为一只程序猿,这3年零9个月的时间我干了什么:

DSP--->ARM--->Linux通用服务器--->云平台Java业务。

最初:写DSP Booter,调内存映射,修修已有驱动,写写状态机。

后来:专注DSP和ARM平台的算法移植,实现密码密钥配用。

再来,在Linux通用服务器上写Lighttpd服务器插件,实现微软Smooth Streaming的视频直播业务,涉足媒体格式处理与交付。

最近,开始学习面向对象思想与Java语言,编写云平台业务应用。

关注领域从【DSP、ARM体系架构】 到 【加密通信业务】 到 【HTTP协议】与【Lighttpd架构与插件】 到 【ISO 基础文件封装格式(如MP4)】与【Smooth Streaming解决方案】 再到现在的【Java学习】与【视频编解码(H.264与MPEG-2)】 。 

----------------------------------------------------------------------------------

作为一只程序猿,在码农工作中的感悟:

1、在深入掌握一门编程语言的前提下,学习一门新语言其实很简单。简单是指语法,但每门语言其背后都是一整套庞大的库(解决方案)。C++对应着MFC,Objective-C对应了NeXTStep和Cocoa,Java又对应了一系列类库、Netbeans、Hibernate等等。

2、不论是C、C++、Java、Objective-C或是Python,只是工具。万变不离其宗的是设计模式与面向对象的思想。

3、技术是无底洞,你也许只做业务,但是为了写出质量更好,效率更高的程序,你需要学习无尽的知识。比如你在Linux平台上开发新业务,除了对业务的透彻理解外,你要对Linux有深入学习,你要对x86(取决于你的硬件)体系架构有了解,仅这两项就够研究好几年的。如果你用Java写业务,你首先要深入研究Java虚拟机,还有各种设计模式,MVC模型等等

4、需要将大脑分区,准确进行状态切换。

比如初写Java时,一个方法传入了两个数组。

第一反应,指针判空!转眼意识到Java里没有指针的概念(不去分析Java语言的实现机理的话)。Java中再也不用写if ((NULL == para1) || (NULL == para2))这种增高圈复杂度的语句了。

第二反应,把形参的值复制下来,memcpy刚写到一半突然意识到Java里没有形参或实参的概念,只要我保持对象属性对该数组的引用,这些数据就不会丢失。 

初写Java的过程一直是自己绕自己,如果能及时进行脑分区切换,把其他语言暂时忘掉就不会这么累心了。

----------------------------------------------------------------------------------

作为一只程序猿,在研发岗位的感悟:

1、IT行业技术日新月异,这是一个需要不停学习的行业,在研发岗位,核心竞争力是学习能力、沟通能力与解决问题的能力。

2、30岁,无论你是Team Leader或Project Manager,你依旧要冲在编码第一线(或称产品大后方)!继续学习新的技术,新的协议。继续走读你手下小猿们的代码,为你团队交付的代码负责。引用我目前直接主管的话:上得厅堂,下得厨房。

3、35岁,无论你是模块架构师、系统工程师、开发代表或是成功转去资源线负责部门能力建设和资源调配。你依旧需要每天加班到21:00,因为你的团队都在加班,产品交付压力你承担了大部分。

4、40岁,恭喜你,你或许已经成为了中高层管理者!这时你接触到公司的运作,产品的转型,先进技术与流程的引进,资金的管理,甚至各种资源争抢与内斗等我现在还想不到的东西。时间对你来说更宝贵,你可能上午在深圳,中午去了上海,晚上又到了北京。再甚者,你今天在马来西亚,明天在利比亚,后天去了洛杉矶……。

5、45岁,差不多了!由于长期的体力透支与昼夜颠倒,这时的你除了颈椎病,腰间盘突出,前列腺炎等无伤大雅的小病外也到了有点大灾大难的时候了。非典艾滋癌?

6、50岁,化疗很成功,在扩散前成功杀退了癌细胞。

7、55岁,退休了,由于之前一直把生命透支给了工作,这时候该练练字,学学音乐,种种花,养养草,晒晒太阳,下下棋。不巧!10年过去了,癌症又复发了,且这次你的身体已经几乎没有了抵抗力,任病魔蚕食。

8、56岁,你好Jobs,我是你的Fans,签个名吧!

 

(IT是条不归路,认真你就输了)

你可能感兴趣的:(java,设计模式,Hibernate,lighttpd,语言,Netbeans)