现在是北京时间2019年11月28日,大学毕业已经工作四个多月。说来也是奇怪,大学里面明明主修机械电子工程,几乎是纯机械方向,毕业之后的工作却与主修的课程毫无关系。因为对机械这一行业毫无兴趣,大学里面花了点时间学了学C,做过一些项目。毕业设计又拿python写了个爬虫并且为它做了一个界面(当时整个机械学院唯一一个与计算机搭上边的毕业设计,本来没人选的被我捡了个漏)。想着毕业之后去深圳找一点程序员的工作干干,结果我这种非专业出身的很难找相关的工作,最终的最终找到了BIOS工程师这个职位。

当时面试的时候面的是软件工程师,工作了四个月之后才发现和想象的不太一样。BIOS工程师也算是软件工程师,但是做这一行代码写的会比较少(有那种很厉害的架构师,那种层次我体会不到,就拿我目前的理解来对这个职位进行分析),需要写的代码量并不多,但是需要理解的东西却是很多很多。举一个很简单的例子,Inter CPU 采用的架构是0X86架构,这个架构的历史十分长远,直到现在也是X86架构。哪怕是熟悉这个架构都绝非易事(所以说BIOS的架构师是真的厉害),里面设计的东西实在太多。我接触到好几个项目,一整个工程里面文件少的有2w,多的接近3w。文件格式也是有很多,随便数一下就有十几种。.c文件、.h文件、dsc、dec文件、uni、sd、vfr文件还有什么asl等等等等。我目前接触的基本就是上述这些。看别人博客说BIOS入门起码要两年,现在看来两年已经算是很快的了。做这行的好处就是这行里面所有的代码都不开源,不开源也就意味着想自学几乎不可能,市面上也没有教这种技术的培训班(甚至我到各大网站去搜索相关的学习资料,完全找不到,培训机构那么多,但是里面几乎看不到BIOS的影子)。导致这个行业入门难,招人也难。不像其他的码农到了年纪会被嫌弃,这个行业涉及太广泛,能做一辈子说的都不过分。

 说了太多不相关的东西了,今天是我写博客的第一天。我开始写博客的目的是记录和分享我学到的东西。希望让其他BIOS工程师少走一点点弯路,毕竟这一行找个资料都难如上青天。只有一大堆的英文spec慢慢看。

今天的博客就是这么多,废话太多了。之后的主要就是技术分享了。接下来的两篇博客不出意外的话应该是下面的内容:

  • 毕设中爬虫源码解析
  • edk2环境搭建以及一些基础教程

评论留言随缘回复,主要上班太忙,没时间看这些,闲下来了回看看评论回复一下。

一个刚入行的BIOS工程师的自我简介的更多相关文章

  1. [每日电路图] 7、设计一个PCB的流程及细节·总结——给外行的同学或刚入行的同学一个宏观鸟瞰电路板设计的大致流程的文章

    前言 最近两天使用AD14软件设计了一个蓝牙防丢器电路板(PCB)图纸,中间有一些细节在本文中记录下,方便下次设计PCB时参考.也希望能给外行的同学或刚入行的同学一个宏观鸟瞰电路板设计的大致流程的文章 ...

  2. 如何寻找设计灵感?写给刚入行的设计师(转自UI中国)

    如何寻找设计灵感?写给刚入行的设计师 如何寻找设计灵感? 这一次的文章,我想和大家聊聊年轻的设计师在没有那么多经验的情况下如何寻找设计师灵感.(希望这篇文章也能帮助感同身受的你) 每个设计师对设计都有 ...

  3. 入行数字IC验证的一些建议

    0x00 首先,推荐你看两本书,<"胡"说IC菜鸟工程师完美进阶>(pdf版本就行)本书介绍整个流程都有哪些岗位,充分了解IC行业的职业发展方向.<SoC设计方法 ...

  4. 社群公会GangSDK:程序员入行AI领域需要哪些技能?

    作为一名Android开发工程师,身边总有些同行很焦虑,看着人工智能越来越火,总是担心Android要不行了,所以,我们需要转行么?Android还能走多久?其实,无论是对于Android还是iOS开 ...

  5. 想要入行web前端要知道web前端的的基本工作职责

    入一行,要先知一行 ”:我们来看看web前端开发职位 无论什么门派都要做到的一些基本工作职责 首先,你必须是一个合格的“页面仔”,这个叫法不好听,但很生动: 我们都知道,所有呈现的内容都是基于HTML ...

  6. Python Web自动化测试入门与实战,从入门到入行

    Python Web自动化测试入门与实战 购买地址 · 京东:https://item.jd.com/69239480564.html   天猫:https://detail.tmall.com/it ...

  7. 入行数字IC验证后会做些什么?

    半年前,公众号写了第一篇推文<入行数字IC验证的一些建议>,介绍了IC小白可以如何一步一步地摸索入门数字IC验证,同时也在知乎发了这篇入门贴,并且衍生出很多额外基础的内容,收获了不少的浏览 ...

  8. .NET入行之工作后

    成长这条路上,有一些事已经渐渐的消失模糊的脑海里,而有一些事,则历历在目,终生铭记. 一切都是从大二下学期快结束的那段培训课程开始的,从此也算是入门了,这也是一条不归路. 在.NET入行之工作前一文中 ...

  9. 通过npm写一个cli命令行工具

    前言 如果你想写一个npm插件,如果你想通过命令行来简化自己的操作,如果你也是个懒惰的人,那么这篇文章值得一看. po主的上一篇文章介绍了定制自己的模版,但这样po主还是不满足啊,项目中我们频繁的需要 ...

随机推荐

  1. Docker 的操作命令记录

    docker ps:列出正在运行的 container docker ps -a:列出所有的 container docker rm [containerid]:移除 container(可并列多个, ...

  2. android studio学习----如何创建一个库项目

    首先,打开Android studio的软件工具,进入到界面中点击菜单的“file”选项. 2 在弹出的下拉的菜单中,可以看到的是为"New Module“的选项点击进入.   3 进入到c ...

  3. How to use VideoToolbox to decompress H.264 video stream

    来源:http://stackoverflow.com/questions/29525000/how-to-use-videotoolbox-to-decompress-h-264-video-str ...

  4. MySQL——基本概念

    1.数据库:是一个长期存储在计算机内的.有组织的.有共享的.统一管理的数据集合.它是一个按数据结构来存储的和管理数据的计算机软件系统,即数据库包含两层含义:保管数据的“仓库”,以及数据管理的方法和技术 ...

  5. spoon数据转换中文乱码(kettle)

    (1) 查看mysql数据库是否为utf8(status) (2) 设置spoon (3) 文本打开spoon.bat,找到set OPT=%OPT% %PENTAHO_DI_JAVA_OPTIONS ...

  6. SpringMVC中控制器接收JSP页面表单的参数接收方式详解及细节注意(400错误)

    控制器方法中参数的接收 (1)以前的参数接收: String  param = req.getParameter(name): (2)SpringMVC简化这个操作,只需要给控制器方法添加参数即可 a ...

  7. go安装配置

    https://www.cnblogs.com/wt645631686/p/8124626.html Win10下安装Go开发环境   关于Go语言有多么值得学习,这里就不做介绍了,既然看了这篇文章, ...

  8. 使用fio命令查看磁盘iops

    具体命令: fio -filename=./localhost.2019-05-08.log -direct=1 -iodepth 1 -thread -rw=randrw -ioengine=psy ...

  9. Game Engine Architecture 13

    [Game Engine Architecture 13] 1.describe an arbitrary signal x[n] as a linear combination of unit im ...

  10. LCD编程_简单测试

    首先,需要编写一个led_test.c的文件,依据代码框架,在led_test.c中我们能够看到的只是led.c.我们是看不到led_controller.c的.比如说,在led_test.c中,需要 ...