如何成为优秀的工程师

第一个问题,搜索工程师是怎么定位的?
不是很了解定位的意思。姑且理解为分类,和从事的工作,
1。 工程性工程师,或是基础架构类工程师,比如原来一台机器一秒抓10张网页,工程了一下,一秒能抓1000张了,比如原来一台机器能存1亿张网页,现在能存10亿张了,

2。 策略性工程师,比如爬互联网上的什么站点,爬这些站点的什么网页,一张网页需不需要收录,一个query下来返回什么结果
随着引擎越来越成熟,后者的比例会越来越高

第二个问题:怎样成为一个优秀的搜索引擎工程师?
我觉得吧,什么C语言牛叉,什么掌握艰深的机器学习知识,什么会分词,什么。。
这些都是术,或者说都是基本功,如果你对应的工作需要,会或是精通那是应该的,不会就需要被fire了。

优秀和普通的工程师的区别是对 数据的敏感性 ,那是日积月累,100张100张100张100张100张网页看下来,积累起来的。
一个算法过来,不需要跑调研,就知道靠谱不靠谱。
知道对系统来说,最需要完善的地方在哪
知道一个算法上线,对子系统剩下几十个算法是正面,还是负面的影响。
剩下的就是所有工程师都需要的两个字: 靠谱

综上所述:
如果您是一个学生,那不要纠结如何成为一个优秀的搜索引擎工程师,因为基本你能学到的都用不上
如果你是一个新入行的搜索引擎工程师,那么天天反复看网页吧

如果你是一个老人,当我没说:)


从搜索引擎发展的黄金10年来看, 搜索引擎技术自身也在不断的自我完善, 修改, 甚至变的庞大复杂. 不可避免的需要进行分工和合作. 粗略的按照搜索引擎的功能划分的话基本有: 抓取索引检索以及成为标配的广告, 4大方向. 
对于一个普通的搜索引擎工程师, 需要纵向深入一个方向或者横向参与到几个方向当中. 技术上覆盖的范围比较大, 针对"搜索引擎工程师"的基本要素而言, 只能泛泛的从几个大方向上来.

  • 背景知识(domain knowledge, 战略级)
每个领域内的背景知识, 可能都是决定方向的重要因素. 97/98年李彦宏的链接分析和Larry Page的PageRank, 两者根本性的优势都在于背景知识上. 当大家都还在深入研究传统的信息检索(IR)方向时, 引入了新的链接关系和AnchorText作为强有力的新特征, 可以迅速获得技术领先. 其根源上是人对于互联网和搜索引擎的特点的理解, 认识到了链接关系上的重要性. 越是新兴的领域内, 背景知识带来的优势就越明显. 背景知识一方面可能需要一些深入的研究作为积累, 另一方面也有非常多的聪明人, 可以迅速的达到一个领域内的绝对高度. 这方面更考验的是视野和智慧, 具体的技术细节其实影响不大.
可能@彭鹏 讲的"数据敏感性"就是一种背景知识的体现.
  • 专业技能(战术级)
有了背景知识作为指引, 大方向基本靠谱的情况下, 能走多远, 能不能达到预想的实际效果, 就依赖于专业技能了. 不同细分的方向上, 各种大招不一样. 前端工程师可能需要玩转javascript+css; 后端的算法工程师,  可能需要数理统计, 模式识别, 数据挖掘等等; 后端的系统工程师, 需要对网络, 分布式等等有深入了解.  
回到"链接分析"和"PageRank"的例子上看, 同样是领先的背景知识下, 专业技能方面就显示出差别来了. 虽然"链接分析"同样是非常成功的技术, 不得不承认, "PageRank"自身的数学模型要比"链接分析"技术更优雅(...我是G粉...), 同时具有更好的扩展性. 这可能是造成google和百度前期的效果差距原因之一.  
  • 基本功(单兵作战级)
基本功可以算是工程师的内功, 之前实验的效果和模型再华丽, 如果实际系统无法达到的话, 那么都是白费. 基本功包括, 基础编程语言的使用, 基础算法的实现, 性能问题分析和解决等等. 就是有能力尽可能的消除现实系统性能对与效果的影响. 当然尽可能的减少BUG, 也是基本素养. 
一个无法实际实现或者运行结果有错误的PageRank系统, 即使再完美, 也不可能产生实际的影响.

至于三者哪个更重要的问题
从实际情况来看, 背景知识起到的效果最明显, 也最容易体现一个工程师的个人价值. 战略级别"指点江山"的感觉听起来很吸引人, 但单纯讲远景和拼想法门槛是很低的, 还需要后续通过实打实做出东西来, 验证自己的想法是正确的.  
从理想主义的"民工自我修养"来看, 我更倾向于是基本功- > 专业技能- > 背景知识, 循序渐进. 当然人的能力和精力都是有限的, 很多时候都不得不向现实妥协.


“搜索工程师”这个职位可以有很宽泛的解释,就像搜索领域里有很庞大的划分一样。涉及到文字处理方面的,有分词,中文处理,日语处理,这里面就涉及到人工智能,机器学习,语言学,语法学,统计分析学等等各个学科的知识。。。等等,数据抓取方面的,有网页结构化,协议,等等。海量数据处理方面,有数据挖掘,有广告排名,有全文检索。。。。等等。在移动搜索方面,有无线网络,有各种地图以及相关应用。。

这是个大的各个学科的集合,搜索工程师只是个统称。所以,按理说没法定位。但凡是称得上“优秀”,必然是很熟悉自己所在的领域,比如有人分词做的非常好,对语义结构化方面是专家,有人对网页结构化很擅长,有人擅长于海量数据挖掘和处理。

我认为,但凡“优秀”,就是该方向的“专家”,除了在这方面比其他人熟悉外,还要有比别人更为专业的眼光和更多的创意,更能优化和带动该方向的进展。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值