数极客首页

程序员,你整天在忙啥

平时工作的时候,经常有产品妹子呼哧呼哧的跑来找我,说你快看你快看,这儿程序有问题,你得改一改。我拿来一看,内心顿生鄙夷,这特码明明是后台的问题,你找我一个做前端的弄啥咧。但是为了顾全同事间的革命友谊,我还是会笑呵呵的说好啊好啊,我先调查一下,如果不是我的问题,我转给其他人。

程序员,你整天在忙啥

也难怪,隔行如隔山。这几天后台有不少同学问前端后端前台后台的概念,今天我就冒着被组织追杀的危险,跟大家聊一下程序员每天在忙啥,你会看到,不同岗位的程序员,工作上到底有什么区别。

要理解程序员不同的岗位,首先你得看下市场上有什么样的需求。用户上网、打开APP,本质上是在获取信息。信息就是数据,数据在哪里?数据在服务器上。我们之前讲过,互联网一切皆下载,下载的就是服务器上的数据。不同的数据有不同的展示形式,视频数据会用视频播放器来播,网页数据要用浏览器来看,朋友圈里的新动态,要用微信APP来展示。所以你看到了,整个过程需要两拨人合作完成。一拨人负责管理数据,一拨人负责展示数据。这也就是最简单的前台和后台的划分。那些整天守着服务器捣鼓数据的,是后台开发。那些整天琢磨如何做出花里胡哨的展示界面的,是前端开发。

先说说前端开发。前端开发概念比较广,用户直观看到的东西,都属于前端开发的范畴。现在比较流行的有三个,Web前端开发、Android终端开发、iOS终端开发。

Web前端开发

程序员,你整天在忙啥

这些人整天和浏览器打交道。昨天的文章讲的ChromeDevTools,就是他们天天用的东西。他们写出来的代码,要放到浏览器里去运行,然后就成了你看到的各种网页。但是你不要以为人家只是一做网页的,这几年大有Web前端一统江湖的趋势,因为他们写的代码不需要发布版本就能上线,不信你可以查看前面关于ReactNative的文章。如果哪天你也想写写代码体验人生,建议看看Web前端的知识,之前讲过简单的HTML+CSS+JavaScript,学着敲一下,然后打开浏览器看看效果,你会发现其实人人都可以当程序员。

Android终端开发

程序员,你整天在忙啥

他们个个都是爬墙高手,因为他们的老大哥被关在了墙外。他们个个油光满面,大好青春都浪费在了无穷无尽的机型适配上面。他们用Java语言写代码,但是Java语言天生相比很多语言执行速度慢,所以他们天天被用户吐槽卡顿,但是没有办法,只能不停的优化再优化。

iOS终端开发

程序员,你整天在忙啥

iOS开发血统纯正,一般人手一套Mac+iPhone,光是生产设备就要上万。他们的开发工具叫XCode,号称最优秀的编程工具。程序界有句名言叫不要重复造轮子,意思是别人已经写过的代码,就不要重复写,直接拿来用。iOS这么多年,有很多轮子可以用,都在Github上。本来要一个星期做完的功能,用好Github可能一下午就实现了。所以我们说,我们不生产代码,我们只是Github的搬运工。当然这个是不会轻易告诉产品经理的。

在介绍后台开发之前,我们先来看看后台服务器面临的困难。你的产品刚刚上线,只有几十上百个用户的时候,你只需要一台PC,加上稍微快点的网速,随便下载个开源的服务端软件就能勉强应付得来前端的数据请求。后来你下血本搞运营,引来了一大波用户,达到成千上万级别的时候,你就得租一台正儿八经的服务器了。再后来,用户量呈指数上涨,你开始幻想从此登上人生巅峰的时候,忽然发现无论有多少台服务器,总是没办法快速响应前端的请求。

程序员,你整天在忙啥

后台开发就是来解决这样的需求的。为了让各个服务器同时并行工作,他们研究分布式算法,把大任务拆成小任务,分布给各个服务器单独运算。为了提高数据库的存取速度,他们研究非关系型数据库,也就是NoSQL,把它们用在社交、O2O应用的后台。为了解决硬盘速度远远跟不上内存速度的问题,他们研究缓存技术,简单来说就是数据从硬盘里取出来就不放回去了,这样下次还用就不用再去硬盘取了。当然,也有一些后台开发专注于业务逻辑,前端想请求什么样的数据,大家坐在一起商量一个协议,他们负责写个接口,前端来调用就是了。

还有一种被称为科学家的程序员,他们天天看论文搞学术,不参与实际的产品开发,但是每发一篇paper都能搞一个大新闻出来。我们今天习以为常的东西,比如程序的运行编译,计算机的架构原理,都是几十年前的科学家程序员摸索出来的。也许几十年后,现在看起来高大上的机器学习、自然语言处理等技术,会成为每个程序员的必修课。

当然,程序员远远不止这些,限于篇幅仅仅列举互联网行业的一些代表。最后,如果你发现你身边有这样一个人,他前端后台,样样精通,文能提笔发paper,武能调试除bug。请不要害怕,这种人叫做:全栈工程师。

#专栏作家#

给产品经理讲技术,微信公众号(pm_teacher),人人都是产品经理专栏作家。资深程序猿,专注客户端开发若干年,对前端、后台技术略懂,热衷于对新的科技领域的探索。

本文原创发布,未经许可,不得转载。

新一代大数据用户行为分析与数据智能平台:数极客(https://www.shujike.com),是支持无埋点、前端埋点、后端埋点、API导入四种混合数据采集方式,整合分析用户行为数据和业务数据,可以自动监测网站、APP、小程序等多种渠道推广效果分析,是增长黑客们必备的互联网数据分析软件。数极客支持实时多维分析、漏斗分析、留存分析、路径分析等十大数据分析方法以及APP数据分析网站统计网站分析小程序数据统计用户画像等应用场景,业内首创了六种提升转化率的数据分析模型,是数据分析软件领域首款应用定量分析与定性分析方法的数据分析产品

发表评论

评论已关闭。

相关文章