大学毕业 华为 软件开发 和 底层软件开发 该如何选择!?

凌绿的微风 2014-11-08 11:09:37
小弟今年本科毕业,专业不对口(学管理的)。
自学三年软件开发,所以在招聘的时候顺利被华为录用。
不久前HR打电话来告诉我说可以让我调岗位,从软件开发 和 底层软件开发 来选择。

由于底层软件开发照理来说基本要求是硕士,但是他们还是给了我这个机会,我就毫不犹豫地选了底层开发。

但是我发现我不太了解底层开发,在网上搜索了之后发现底层开发要设计硬件知识,比如数电,模电。但是由于我是自学软件开发的,我并没有了解过任何硬件知识,数电模电这种概念我就是完全没有听说过。 我的开发经验大多数都是面向对象的C++语言。

所以想请教一下各位,底软 和软开 两者的区别是不是很大?哪个相对更有前途?
最关键的是...如果的确是一点点硬件知识都不具备,是不是最好不要选择底层软件?免得坑了自己又坑了公司。

最后问一下华为的软件开发一般是用什么语言做什么类型的应用呢。
...全文
2920 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
shinerise 2016-11-02
  • 打赏
  • 举报
回复
偏低层的通常需要一些硬件知识,不过也不绝对。实践中慢慢积累吧。华为会有好导师,进去了想学点话,成长会很快。并不是人会什么才去做什么的。
mortimer7866 2016-11-01
  • 打赏
  • 举报
回复
引用 4 楼 Heaven_Redsky 的回复:
底层开发接触的硬件比较多,给人的感觉更能了解“真实的世界”,呵呵。 但是,相对来说,学习曲线很长,2,3年可以真正入门吧。能做多深完全取决于个人的愿景和毅力。可以说越老越值钱(如果能一直做下去的话)。 要学习的东西前面几位已经说的很全了。还一点就是底层开发要接触更多的硬件,也就意味着要读很多的器件手册,全是英文,这个很是需要适应一阵子。
真实的世界。。
mortimer7866 2016-11-01
  • 打赏
  • 举报
回复
个人喜欢c/c++软件开发,楼主既然没有硬件知识选嵌入式可能比较难
zhujinqiang 2014-11-23
  • 打赏
  • 举报
回复
引用 1 楼 lr2131 的回复:
结合你自己的专业和你的技术能力,建议你还是尽量不要选做底层,一定要做的话,选上层软件开发。 华为做底层最近非常缺人,我前几个月也被联系过好几次,但我现在也不想再去做太底层的了,虽然很喜欢做。 华为想让你去做底层,是考虑到两点: 1.华为确实缺人。 2.有些大公司不在乎你是不是真的专业不对口,他们有的HR更看中的是你的人品,你人品好,做事踏实,他们愿意花钱花精力培养你去做那些目前不擅长的工作。
++
SolaceYu 2014-11-22
  • 打赏
  • 举报
回复
我想问问楼主哪个学校毕业的。。
WangLanguager 2014-11-22
  • 打赏
  • 举报
回复
还是作软件开发吧,做底层需要你对ARM体系结构相当了解,为了写bootloder,对linux内核相当了解,为了写驱动和移植驱动程序,还要对数模电相当了解,为了能看懂芯片手册,不需要你自己设计电路,电路已经由硬件工程师设计好了,但你需要知道硬件是怎么工作的,就得懂数模电。这些东西非常耗费人精力,而且和你原来所学的c++知识相去甚远,c++的OO在底层方面基本用不到,感觉你可以选择做QT,嵌入式中的应用程序开发,会用到c++,是你的长项,最好不要舍本逐末。
杨六 2014-11-18
  • 打赏
  • 举报
回复
放心,在华为开发不会太难,多跟项目组的同事交流请教,在工作中再积累相关的知识。华为的人要善于求助
fly 100% 2014-11-17
  • 打赏
  • 举报
回复
如果大学期间做过fpga 做底层应该没有问题
lbaihao 2014-11-16
  • 打赏
  • 举报
回复
结合你自己的专业和你的技术能力,了解一下是什么部门的职位,具体任务是什么再做决定
韩半仙 2014-11-10
  • 打赏
  • 举报
回复
我做android 驱动的,可以探讨一下。
曹大夯 2014-11-09
  • 打赏
  • 举报
回复
具体问题具体分析。 “底层软件开发”也有很多方向,有不同的技术。需要的知识也不一样。 如果可能,你可以了解一下是什么部门的职位,具体任务是什么再做决定比较好。
Heaven_Redsky 2014-11-09
  • 打赏
  • 举报
回复
底层开发接触的硬件比较多,给人的感觉更能了解“真实的世界”,呵呵。 但是,相对来说,学习曲线很长,2,3年可以真正入门吧。能做多深完全取决于个人的愿景和毅力。可以说越老越值钱(如果能一直做下去的话)。 要学习的东西前面几位已经说的很全了。还一点就是底层开发要接触更多的硬件,也就意味着要读很多的器件手册,全是英文,这个很是需要适应一阵子。
lr2131 2014-11-08
  • 打赏
  • 举报
回复
结合你自己的专业和你的技术能力,建议你还是尽量不要选做底层,一定要做的话,选上层软件开发。 华为做底层最近非常缺人,我前几个月也被联系过好几次,但我现在也不想再去做太底层的了,虽然很喜欢做。 华为想让你去做底层,是考虑到两点: 1.华为确实缺人。 2.有些大公司不在乎你是不是真的专业不对口,他们有的HR更看中的是你的人品,你人品好,做事踏实,他们愿意花钱花精力培养你去做那些目前不擅长的工作。
shinerise 2014-11-08
  • 打赏
  • 举报
回复
前途都挺好。底层的确需要一些硬件知识。
gududesiling 2014-11-08
  • 打赏
  • 举报
回复
底层开发设计的内容太多,门槛比较高,模电你可以不精通,但是一些基本的知识得需要知道的,什么寄存器,什么电平等,数电需要没事的话研究研究,从事底层开发主要涉及数电,但是都是比较浅的一些知识(那些模电,数电比较牛逼的人一般都是硬件工程师)。 软件方面基础,涉及的内容也比较多:操作原理,汇编,现在linux相对来说比较有优势,那么你还得需要嵌入式的相关知识:bootload,kernel移植,驱动开发。 上述三者boot部分只需要理解怎么个流程即可,kernel就是一个配置的过程,最终做底层开发,基本上就是驱动-》driver的开发了,这就涉及和硬件打交道了,但是和具体寄存器打交道的只是很初始的一部分,大部分是内核和驱动的框架的知识,找本书研究研究吧。 最近移动端相对火爆,而android的底层仍然是linux,底层开发也就是驱动的移植了。。。

21,616

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧