导航:首页 > 程序命令 > 小姑娘六年成为高级程序员

小姑娘六年成为高级程序员

发布时间:2023-01-03 03:20:51

1. 程序员6年只干了50个小时工作,被开后称是编写了自动化工作脚本

很久之前,Reddit上出现了一则匿名的自白帖子:“ 大概六年前到现在,我在公司什么活都没干 。”

这个化名为FiletOFish1066的程序员称自己供职于一家知名的 科技 公司,实际上无所事事。

他写道,谋得这份质量保证工作的八个月后,他使自己的全部工作完全自动化。“我可不是开玩笑。每周40个小时,我去上班,在办公室玩《英雄联盟》,浏览Reddit,想干啥就干啥。 在过去这六年,正儿八经的工作我可能也就干了50个小时 。”

上司意识到他在六年内所做的工作比大多数硅谷程序员在一周内所做的工作还少后,就把他开除了。

这个故事在网上的技术圈子迅速传播开来,最终促使这位主人公不仅删除了帖子,还删除了整个帐户。

我发现歪果仁也跟中国人一样爱看热闹,不嫌事大!

大概一年后,一个自称是Etherable的用户向互联网上最重要的程序员论坛之一Stack Exchange上的Workplace版块发了一个问询帖:

“我没有告诉雇主我的工作已自动化,这是否不道德?”这位内心矛盾的程序员说,他接受了一份美其名曰是“数据录入”的编程活;六个月前,他编写了使整份工作自动化的脚本。此后,“ 上一个人过去常花一个月才能完成的工作现在只要10分钟就能完成。 ”这份工作是专职性质的,带来的好处是Etherable可以在家办公。

这个程序取得了近乎完美的效果。

后来这个帖子引起了分歧,评论铺天盖地。(现在浏览量将近50万人次。)意见分成两大派,一派觉得Etherable在欺骗雇主,至少在蒙蔽雇主;另一派认为这个程序员只是找到了一种巧妙的方法来完成手头的工作。Etherable从未回应随至而来的讨论。也许是被受到的关注程度(世界各地的媒体都在竞相报道此事)吓坏了,这个用户销声匿迹,只留下了那则帖子,关于谁可以使工作自动化、在什么样的条件下这么做的讨论越来越备受关注。

可以称之为自发自动化(self-automation)或自行自动化(auto-automation)。在大规模自动化这个幽灵困扰一线员工的那一刻,自行其事的程序员表明这个威胁到了程序员的手里,如何变成天赐之物,不管雇主是不是知情。由于FiletOFish1066和Etherable都匿名发布帖子,随后很快消失,因此两人都联系不上,无法请他们发表评论。但他们的故事表明,职场自动化会有多种形式,并由高管以外的人来主导。

生性乐观的经济学家和未来学家吹嘘, 自动化的好处在于,将工作交给机器有望消除无须动脑子的重复性工作 ,让人们可以一心扑在有趣又有创造性的工作上,或者更要紧的工作上。

砖家你确定现在程序员干的都是不动脑子的工作?

你还确定,时间多出来之后,

程序员会干有创造性的工作?!

几十年来程序员们一直在编写使工作自动化的代码。编程通常需要用到在不同的层面(从代码格式化到合并至不同的代码库)添加自动化的工具,大多数人根本没有走到使工作完全自动化或几乎完全自动化这个极端。

我通过Reddit和电子邮件的私聊信息与十来个声称有类似经历的程序员聊天。这些自发自动化人士处理过库存管理、报表编制、图形渲染、数据库管理和各种各样的数据输入。

有个人还使他妻子的全部工作自动化。大多数人要求匿名,以保全工作和声誉。

一位很早是自发自动化人士的名为Gary的程序员告诉我:“一开始,我的工作每天实际上要干8个小时。”他在一家大型企业连锁酒店工作,这家连锁酒店在90年代开始实现计算机化工作流程。Gary很快意识到在花大量时间重复同样的任务,于是他开始 下班后学习编程 。他说:“大概 花了三个月的时间,我用Lotus 1-2-3(当时一款很流行的PC电子表格软件)编写了一段代码,不仅使个别的重复性任务自动化,实际上还使整份工作自动化 。”他没有一五一十地告诉上司,其职场生活的质量大大提高了。

他告诉我:“一整天很空闲感觉怪怪的,于是我趁空了解酒店的其他系统。”后来他帮助管理层消除了那些系统中的瓶颈。自行自动化消除了琐碎的工作,减轻了他的压力,并让他可以扑在真正感兴趣的事情上。他说:“实际上,我将这份岗位变成了自己喜爱的岗位,即排查故障。”在离开公司前两周,他交给老板一张软盘,里面装有这个程序和解释如何运行的说明文档。Gary说,老板对他辞职颇为不安,直到他交出了软盘,介绍程序如何运行,并告诉老板万一有问题可以打电话给他,老板才放下心来。 后来电话没来过一个。

在大多数领域,一线员工对于他们的工作是否自动化,或者如何实时、何时实施自动化很少有任何正式的意见。自发自动化人士明白,自由化由势必从中收益的一线员工、而不是由自上而下的公司命令来安排自动化会什么样。一些人欣然享受多出来的闲暇时间,另一些人利用多出来的时间来学习新技能,应对新的编程挑战。

ps:你确定不是玩手机?

不过,许多自发自动化人士害怕与办公室外面的人分享代码。即使一个程序无可挑剔地完成了工作,许多人还是觉得为牟私利而搞的自动化是错误的。人力劳动本质上是善良的(以及员工应始终最大限度地为雇主提高生产力),这比任何自动化脚本更深深地融入到美国的职场文化中。而大多数雇用合同明文规定,工作时间开发的知识产权属于雇主。因此,员工可能所做的任何效率提升或自动化改进都往往归雇主所有。

一位程序员没有把他使其工作完全自动化的真相告诉公司,因为担心公司到时声称知识产权归公司,并拒绝补偿他。另一位只肯自称是Jordan的人告诉我,他曾无意中使整个部门的工作自动化。现在他用自动化脚本每年省下“好几周”的时间。Jordan表示,他和同事们保持缄默,绝不透露自动化技术,以便控制使用自动化技术的方式:“我们通常不对外透露这些工具。”

另一位程序员竭力向老板隐瞒使其年薪5万美元的工作完全自动化的概况。管理层可能通过网络查看其电脑屏幕上的内容, 于是他运行预先录制的视频,掩盖他实际上没在工作的事实。 Etherable在寻求建议的帖子中写道:“我觉得这么做不对。”

一些程序员表示,就因为使工作自动化,自己已被公司炒鱿鱼。2011年,一个名为AcceptableLosses的用户写道:“ 公司拿去了我开发的软件,派一个白痴顶替我,并立即以“不服从”为由解雇了我 。我开发了一款每年让这家公司获利100万美元的软件,对方却仅仅为了省下每年约3万美元的工资而开除了我。我真是自掘坟墓啊。”

正因为如此,自发自动化人士担心的倒不是道德问题,而是不想被雇主开除或盘剥,正如伍德科克特别指出的那样,雇主“不仅要求我们的所有时间归他,我们开发的所有东西也归他。”他推测,谨慎的自发自动化人士“不信任我们的工作场所。上司会说‘谢谢你,干得漂亮。现在再做一次。’”

很少有员工渴望完全自我自动化,但似乎越来越多的员工对于使用脚本来处理繁忙工作感兴趣。网络上有众多这方面的博文和实用文章,比如《我如何用Node JS使我的工作实现自动化?》,也有众多播客介绍每一种想象得到的自动化:小公司、营销和智能手机。这简直就是一个蓬勃发展的家庭手工业。

照目前情况来看,自发自动化大有助益。但随着自动化技术变得更广为人知,它们可能完全成为管理层期望员工拥有或学会的另一种技能,并最终让企业受益,并以另外某种方式使这些人成为有用的员工。

《哈佛商业评论》杂志写道:“员工将越来越需要使自己的工作自动化,否则就滚蛋。放眼全球,我们会看到更多自上而下的管理层命令,要求搞自下而上的自动化项目。”而老板及员工开发的机器人软件会再次品尝胜果。

在此之前,任何使用代码的人都可能应该考虑自发自动化带来的好处。可以以此来测试自动化如何为普通员工带来更高的生活质量,尽管谈不上完美。伍德科克告诉我:“问题在于自动化要有效,自动化要民主化。不是公司企业在提供自动化,这向前迈出了一步。它仍然不是民主化过程。”自发自动化人士在单独行动,决定何时、如何把自己的工作换成代码。而理想情况下,自动化决策将在同事和同行给出意见的情况下共同做出,以便可以均匀分摊好处。

自发自动化人士表示,程序员有独特的条件,可以与雇主就员工应该保留哪些自动化带来的效益展开谈判,比如时间更短的工作周以及更灵活地从事自己感兴趣的工作。从理论上来讲,自发自动化人士可以在属于中产阶级和工薪阶级的程序员当中组织和分配自动化技术,从而打造有望实际上获得15小时工作周的一个行业。这似乎是千载难逢的机会,可以努力为把人放在首位的自动化模式创造条件。

你如何看到互联网蓬勃发展,越来越多产业自动化发展,今后人们能做什么呢?

欢迎评论

点击【右上角,关注 子瑜说IT 】持续更新IT资讯以及web前端开发教学

2. 女生做程序员是什么体验

本人女,在IT行业待了有快20年,现在仍然在这个行业,暂时也没有换其他行业的打算。

时至今日,我仍然在技术领域,不是销售那种角色。

在中国,女生在IT界的技术领域待这么久的不多吧?

先给结论吧,那就是:我不后悔!

如果你们有兴趣,我会尝试写一下在IT这么多年的感悟和自己的心态变化,希望能给IT圈的小辈们(以我的年纪,估计可以这么说了),一点过来人的建议。

另,真的希望能有IT圈的女生看到,避免和我一样的困惑。

作为一个理工女,谈不上任何的文字功底(coding算么?),这个回答我就想到哪儿写到哪儿吧,大家就不要挑剔我的文笔了,呵呵。

开始唠叨之前,有几句话说在前头:

1.我所有的工作经验都来自外企;

2. IT行业和我年轻刚入行的时候(?b汗)已经有了巨大的变化;

3.中国IT行业这20年的大发展是我从业经历的大背景;

以上因素,请一定考虑,再来分析我的经验是否还适用于你。这世上没有最好的建议只有最适合你的建议,而最适合你的建议一定需要你自己的分析和判断。

看了大家的评论,还有一些给我私信的朋友,我想要先澄清一个事情,那就是:

搞IT不等于程序猿!

IT这个行业太广泛了,虽然写代码编程占了其中很重要的一个部分,但是真的不是全部!

在IT行业有很多不同的工作角色。以下是我个人的一个职业生涯工作角色的变化:

最开始是一个程序猿,是的,我入行第一份工作确实就是coding,然后做企业级产品的硬件安装工程师,然后是做软件安装工程师,接下来是做解决方案工程师,再然后是系统架构师,再然后是解决方案顾问,现在我在一家外企IT公司负责公司相关产品在几个重点行业的技术支持工作。

好吧,你看出来了吗,我除了入行的最开始写了两年程序,其他的职位都不是程序猿!

大家不要再把IT局限到写程序了好么,有大把的工作岗位等着你们哪!

什么是企业级产品?拜托,IT并不是只有PC+平板这样的设备的,真正的企业用户,他们的机房里有大量复杂的、专为企业用户设计的专用设备,比如这样:

(图片均来自网络,仅是举个栗子,如有不妥请告知我删除)。

而我做软硬件安装工程师时的工作状态就类似如下:

说回主题吧,干IT后悔吗?

实话说,从来没有过!但是有过无数次的动摇、迷茫、自我否定,扪心自问我一个如花似玉的好姑娘为啥要干IT?!不过每次理性的结论都是:干IT还是挺好的!

先吐槽吧,既然问出这个问题,肯定是因为干IT有无数的坑,这些坑包括但不限于:

1.忙!绝对的忙,不管你在IT圈的哪个岗位,我就没见过不忙的,技术、销售、程序猿自不必说,就连IT公司的行政、人事都是个顶个的忙。这种忙不分白天黑夜、不分平时假日、不分男生女生、不分黑人白人。从一睁眼就如同发条般转个不停,忙到没空吃饭、喝水、上厕所,忙到没工夫陪女友老公父母孩子,相信我,这是绝对的常态。

2.累!人可以打鸡血,不过搞IT的人那么多,也没那么多鸡啊!所以啊,这么一通忙,又没有鸡血,累是必然的??W畈锌岬募影喟?ㄊ敲刻彀胍菇?突Щ?康魇陨璞噶??恢埽?拱?ㄎ?思际跬侗炅??2个小时不睡觉,咖啡杯堆成山。累到能准确的感觉到自己各个脏器的位置,心脏跳的都好像不是自己的了。常常有各种IT人士猝死的新闻,在我听来,完全是随时可能发生的事情。

3.要不停的学习!IT也许是各个行业中更新最快的行业了,不夸张的说,你每天都必须学习,你才有可能正常工作。程序猿要学习各种语言、开发方法,产品人员要学习公司新产品的各种特性,熟记各个参数,还要掌握市场的动向,友商的产品情况,除了产品还要了解你负责的行业情况,客户在用什么、需求是什么,等等等等,不胜枚举。一句话,在IT,一天不读书,智商变成猪!

好吧,吐槽时间结束,看看干IT那些让你无怨无悔的原因:

1.能养家糊口:这个必须要放在第一位的来说,那就是干IT能养活自己。在中国,如果单看工资收入,金融和IT绝对是排在前几位的行业。IT行业相对其他传统行业来说,工资水平还是处于较高的水平,更别说你幸运的投身到一个初创公司获得股权期权等等,IT行业的快速发展给每个从业者带来的是看得见摸得着的利益。我想,这也就是IT圈能吸引这么多有为青年加入的原因。

2.公平的竞争:是的,IT是一个相对其他行业更为公平的平台。所谓公平就是,你的能力决定一切。你再有背景,有再牛的爹,能不能写出源代码才是最重要的好么?!广大的青年才俊们,只要你有真本事,就不用担心自己在这个行业的前途。

3.视野开阔:IT行业发源于欧美,汹涌澎湃的席卷全球。干IT你看到的世界不再仅仅是你的公司、你的产品、你的国家,你每天都在和不同国家、地域、行业的人和事打交道。所谓着眼中国,放眼全球。

4.保持年轻:在IT圈里混,每天都在接触新事物,我觉得这是区别于其他所有行业的一个重要特点。每天有各种层出不穷的新产品、新思路、新方法、新创意呼啸着来到你面前。如果你有一个开放的心态,愿意去了解和探究这些新鲜事物,你会永远保有自己的好奇心,永远有一颗年轻的心态。相信我,一定要保持对世界的好奇心,这样你才不会在进入中年之后变成一个庸庸碌碌,浑浑噩噩的人。

5.能力的提升:这个说起来很含糊,能力分为很多种,在IT最能提升什么能力或者最应该提升什么能力呢?第一,学习能力。你必须不断的学习并且给你的学习时间并不会很多。在短时间内快速的掌握工作相关的各种技术技能,这一种能力是让你在IT圈甚或将来在其他的什么行业圈里都会受用无穷的能力。举个例子,我在头两年的coding生涯中,用过三种不同的编程语言,除了大学就学过的C++,另两种语言相当冷僻,一种是银行系统常用的开发语言,一种是和Mainframe大机环境的通信语言。当时要用这两种语言完成客户要求的系统编程,完全从零学起。看教程、研究别人的程序、不断的尝试编程、测试、debug,在短短半个月的时间掌握所有的编程方法,在客户要求的时间内完成系统的编写。这样类似的情况,在整个IT生涯中屡次出现,不会有人等着你慢慢成长,这个行业需要你快速的从某个领域的菜鸟变成大拿;第二,时间管理能力。做IT的忙前面已经说到,你每天、每周都面临大量的工作,再加上自己的学习计划,正所谓是千头万绪。每一个能在IT行业如鱼得水的人,一定是能管理好自己的时间和事情的人。高效率的工作绝对是搞IT的基本功。如何高效率的工作,大家可以了解很多优秀的时间管理、日历管理的方法,选择最合适自己的方法和工具;第三,理性思考的能力,IT是典型的理工科范畴,拥有理性思维更是基础之基础。而长期浸淫在IT圈,你的理性思考的能力会得到极大提升。理性客观的看待任何问题,在寻求解决方案时不掺杂任何的感性思路。拜托,1就是1,0就是0,没法感性,客户的系统就在那儿停机呢,赶紧的解决问题,任何的退缩、害怕、犹豫统统的先让到一边吧。

6.成就感:基于以上种种的能力基础,我相信你在IT界一定能站住脚跟。能力的成长、视野的开阔、开放的心态,这些会使你的IT职业生涯能有一个长足的发展。开发出客户满意的源代码、为客户提供一个复杂的IT架构设计、解决了客户一个紧急的系统故障,这些成功的背后,你会收获满满的成就感。某年春节,正是某客户业务最繁忙的时候,其汇款系统却在这个时候掉链子,响应速度奇慢,客户在柜台前排起了长队。万分紧急中,我们的团队和客户协同工作,花了几个小时的时间定位故障,果断排除,在次日恢复了业务的正常工作,客户的感谢之情就差给你跪下了。这种成就感爆棚的事,在这个圈子里还是时常能碰到的。

综上,按照马斯洛需求层次理论,干IT不仅能满足生存要求,同时还能满足获取尊重、自我实现和自我超越的需要。即使你在疲累的时候会感到一丝迷茫,但是冷静的思考过后我相信你还是会选择继续从事这个行业。

以上是我自己自说自话的结论,回头想想,也许是我个人对于IT这种理性的行业有爱好,所以能列出这些好来。如果你真正的爱好是别的行业,也许我上面说的一切都不适合你。这年头,男女都怕入错行。一定要选择自己喜欢的,至少不讨厌的事情来作为职业的选择。否则,即使勉强自己做,会是无尽的痛苦。

哎呀,码字太累了哇!好久没写这么长的文章了哇。给客户做架构设计主要是画图,也不用写这么多字啊!

看到评论里很多问家庭状况的,正好也是想说给IT女生们的话,就一并再唠叨几句吧。

我自己觉得还算做到了work life balance吧。简单一句话,人生所有的大事都没有耽误,嫁人、生子、买房、买车,有一个无条件爱我、支持我的老公和儿子。

老公也是IT界人士,以我彼时的忙碌和宅的程度,也只能认领一个圈内人士了。有时候想想,我老公也挺悲惨的,就是完全糊弄不了我!说什么我都明白,完全无法体现其IT人士的高人一等啊。哈哈,开玩笑啦,下面开始说正经的:

1.在工作的时候你就是男人。听说过那句话吧,IT圈女人当男人使,男人当牲口使。怎么把女人当男人使?我觉得其实最重要的是要有理性的思维方式。在工作中尽可能的用理智来思考问题。不是不能有感性,但是感性不能影响工作中你对问题的判断。见过太多在工作中情绪控制不住、使小性子的姑娘,其后果只能是自求多福了。还有,“我是女生,你们都要照顾我,让着我”这种思想,怎么说呢,只能让你自寻烦恼。不是说IT圈的男人都是冷血。这么多年搞IT,不管是同事还是用户,我得到过很多帮助,大到帮你搞定一个项目中标,小到帮你搬一下机器,在很多节骨眼上多亏了这些帮助才能过关。但是但是,你不能总是靠人家的帮助活着啊,没人会一直一直满足你的求助的。是你的工作,你必须要自己去把她完成啊,要是习惯了事事都求人,最终不会有人来帮你,你就自己烦恼去吧。独立、理性、踏实、肯干是步入IT圈的必要条件。

2.找个什么样的老公。我不是婚姻心理大师,只是想谈谈自己的一点感想。前面说我老公也是搞IT的,我能获得家庭的完全支持,一个很重要的原因就是他也是这个圈里人,他完全理解我的工作!我的压力、困难、需要加班出差等等一切工作上的问题他都能感同身受,不会有任何的不理解。(我对他也是一样啊)。由此我想到,你要是想做一个成功的职场女性,你的家人,尤其是你的另一半,必须能理解你,支持你,你们能有一种partner那种互相扶持的关系。当然这一切的前提是爱,你在挑选IT这个工作的时候,我强调必须是你喜爱的。选老公,就更是了。在此感谢我的老公对我无条件的爱,无论我有多么疯狂的点子,有些在他看来是不可理喻的想法,最后都支持我去实现它们,在它的支持下,我一个人出去旅行、学MBA、每天健身、参加马拉松、去潜水等等。想要个精彩的人生吗,先找个好老公吧!尤其是IT女生,要是你老公不理解你,那日子就太难过了。

3.管理好自己的身体。女生搞IT,对身体的消耗比男生大的多。女生天生的生理特点在面对IT这个行业来说,劣势明显。虽说女生当男生使,但是我们也要自己照顾好自己不是吗?怎么照顾?选择优质的电脑桌椅保护自己的腰椎颈椎;多站起来活动,不要一坐一上午;多喝水,少喝咖啡和碳酸饮料;每周至少健身3次,保持身材和活力;尽量规律的生活,合理安排自己的时间,提高工作效率,能不熬夜就不熬夜;不要因为不规律的生活暴饮暴食;说起来感觉很唠叨是吧,到我这个年纪就会觉得都是真理了。

4.注意自己的外貌。不是说要姑娘们花大把精力打扮,但是要做到自己的服饰和装扮符合你的身份和环境。如果今天我要泡一天机房,那么要穿适合活动的服装,抹上隔离霜(吐槽一下,泡一天机房出来脸都是黑的好不好!);如果今天是见客户,要穿着职业正装,business formal。你要穿个毛衣、牛仔裤的啥去,也就不要怪客户小瞧你吧。不过,某次见国内互联网的客户,一个部门经理,人家穿着个拖鞋就出来了??.顿时觉得自己穿西服好热。所以穿什么见客户,还要看是啥客户。除了互联网的客户,我都是要穿好西服、衬衫这些服装的。

5.最后最后,少看微信、微博上的那些段子吧,不要让自己被这些碎片化的信息充斥。买个kindle,有空多读读书,至少可以让自己不那么浮躁。总之一句话,作为女生,一定要保持自己独立思考的能力。

推荐一本给女生的书《Lean In 向前一步》。个人极推荐,每个职场女生我觉得都应该看看。我不多说了,不想影响你们自己的判断。

还有人私信问我,想回家做家庭主妇行不行。当然行啊,选择留在IT圈还是回归家庭,只要是发自你内心的选择,我都支持。最重要的一点,你要有选择自己梦想生活的能力!

(ps:码字真的很辛苦,希望大家能够点个赞,关注一下,小编会继续努力更新哒)

着作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

3. 求助干了至少五六年的女程序员

这个问题实在是太广泛了。要说明的是:至少做了五、六年软件开发的女程序员的人肯定是存在的。但是即使存在这样的程序员,由于大家工作都非常忙,所以也不可能有很多时间、精力帮助你编程、调试、完成一个功能完整、规模较大的源程序,只能够帮你分析一下常见的语法错误、以及经常出现的编译错误之类的。所以你必须要把具体的问题写出来,别人才好帮助你进行分析。

4. 成为一名“高级”程序员的条件是什么麻烦告诉我

聪明的程序员可能比他们的同行拥有更出众的编程技巧,但那不足以说明他们就是“老手”。同样,仅仅因为拥有10年编程经验也并不意味着他们就是高手。在工作岗位上,拥有多年编程经验也不能说明问题。即便没被炒鱿鱼,那也不能提升你的价值。
下面列举的事情是大多数高级程序员都会做的。
1.至少掌握一门编程语言
我相信有些优秀的程序员只懂(并精通)一门编程语言,但在某种程度上而言,这其实会限制一个人的思维。就像当你手拿一把锤子时,任何东西看起来都像钉子。我认为,知道并成功使用至少一门编程语言,这是程序员从新手走向老手的重要一步。我要说的是,像javaScript和SQL这样的辅助编程语言,只有当你确实已经开发了完整的应用程序,并在其中使用这些编程语言时,它们才有价值。
2.工作之余也经常编程
我抱怨过把开源作为招贤的一项要求,但那仅仅因为许多充满激情的程序员把时间花在别的地方。除了对开源有所贡献,你还可以做兼职顾问,兼职创业,开发自己的产品或者创办自己的微型软件公司。当然,你也可以尝试从外部接些兼职项目,可参考伯乐在线的这篇《成功接项目需要注意的几个要点》。
注:mISV即MicroISV,是一个只有一名员工组成的软件公司,是一种微型公司。
3.经历完整的软件开发过程,从概念设计到产品实现,再到产品维护
有的程序员希望不用自己动手就可以得到详细的设计说明,然后把缺陷代码交给测试/维护小组,这是平庸程序员的一个缩影。任何称职的程序员都会跟客户密切合作,去制定需求分析,然后编码实现,当然也要维护。如果你在编码实现阶段偷懒了,那你在维护阶段不得不付出代价。
4.不断创新
创新就是做一些你身边的人没有做过的事情,用来改善你的过程或产品。你不一定非得是世界上第一个做这件事的人,只要发现一个问题,找到解决方法然后实现它就行。
5.编写的软件能解决实际问题
有一副虚构的场景:一名黑客,仅仅是出于对技术以及自己所做事情的爱,一天到晚都在编写代码。但这几乎无助于成就一名优秀的开发者。事实上,我曾见过有些开发人员和客户争论,来采用更好但不太有助客户的技术。这会适得其反。你可以利用自己的时间来完善。但涉及工作时,你最好还是编写能实际改进并解决问题的代码,而不是使用那些不同寻常的算法或接口。
这些问题对于任何想成为高级开发人员的朋友来说,都合情合理。因为这些问题和拥有多少年编程经验并没有关联。如果你能做到上面4-5条,那你就是高级程序员。

5. 如何成为一名高级程序员

牛逼的人总是让人羡慕,但如何才能让自己成为牛逼的人对我们来说更重要,本文分享的是如何才能成为java高级程序员,你和java高级程序员只差这一篇鸡汤!干了这碗鸡汤,未来不可限量!

1、离开舒适区,提高个人代码能力
不安于现状,高级程序员一般都具有丰富的项目经验,经验是能力最好的试金石,即使在碰到未知的问题,丰富的项目经验也不会让你觉得就束手无策。程序员是一个技术跨度很大的工种,对某种既定环境语言的依赖性太强,知识和技能都无法很好的迁移。
2、将复杂的问题简单化处理
乔布斯曾经说过,简单便能移动一座大山。一个高级程序员之所以让人觉得牛逼,不仅仅能用写出优雅简洁的代码,更重要的是他们还能将这种化复杂为简单、化繁为简的功力内化至各项工作,不管是面对多复杂的项目、多棘手的 bug 都能面不改色、心不跳,步步拆解问题,逐一各个击破。
3、自我总结,提升学习和解决问题能力
代码能力、工作状态只是一个高级程序员区别于普通程序员的外在表现,王者和青铜的核心区别在于思考方式和解决问题能力的区别。高级程序员可能每天会花半个小时总结当天的项目经历,反思自己的不足,思考问题解决或优化的方案。区别于初级程序员,高级程序员总结问题的往往能从本质出发,不会只停留在表面,弄清问题内在联系,抓住问题关键。这也就解释了为什么拿到一个项目需求,很多高级程序员不会首先去想代码实现,而是去想需求与架构的行为。
4、责任心和需求理解能力
高级程序员对自己的要求不仅限制于完成项目、解决问题本身,往往还会去思考并权衡需求涉及的一切,比如如何去支持设计模式、库、框架、重构和流程等,从内核到外层界面,既重视功能需求,还会注意到拓展性能、稳定性等需求,甚至还需要评估设计模块对整个项目中的影响及潜在的威胁。
总结:如何才能成为高级程序员,关键还是思想,学习的思想、总结的思想、创新的思想!

6. 成为高级程序员应具备什么条件

作一个真正合格的高级程序员,或者说就是可以真正合格完成一些代码工作的程序员,应该具有的素质。

1:团队精神和协作能力
把它作为基本素质,并不是不重要,恰恰相反,这是程序员应该具备的最基本的,也是最重要的安身立命之本。把高水平程序员说成独行侠的都是在呓语,任何个人的力量都是有限的,即便如linus这样的天才,也需要通过组成强大的团队来创造奇迹,那些遍布全球的为linux写核心的高手们,没有协作精神是不可想象的。独行侠可以作一些赚钱的小软件发点小财,但是一旦进入一些大系统的研发团队,进入商业化和产品化的开发任务,缺乏这种素质的人就完全不合格了。

2:文档习惯
说高水平程序员从来不写文档的肯定是乳臭未干的毛孩子,良好的文档是正规研发流程中非常重要的环节,作为代码程序员,30%的工作时间写技术文档是很正常的,而作为高级程序员和系统分析员,这个比例还要高很多。缺乏文档,一个软件系统就缺乏生命力,在未来的查错,升级以及模块的复用时就都会遇到极大的麻烦。

3:规范化,标准化的代码编写习惯
作为一些外国知名软件公司的规矩,代码的变量命名,代码内注释格式,甚至嵌套中行缩进的长度和函数间的空行数字都有明确规定,良好的编写习惯,不但有助于代码的移植和纠错,也有助于不同技术人员之间的协作。
有些coding fans叫嚣高水平程序员写的代码旁人从来看不懂,这种叫嚣只能证明他们自己压根不配自称程序员。代码具有良好的可读性,是程序员基本的素质需求。
再看看整个linux的搭建,没有规范化和标准化的代码习惯,全球的研发协作是绝对不可想象的。
4:需求理解能力
程序员需要理解一个模块的需求,很多小朋友写程序往往只关注一个功能需求,他们把性能指标全部归结到硬件,操作系统和开发环境上,而忽视了本身代码的性能考虑,有人曾经放言说写一个广告交换程序很简单,这种人从来不知道在百万甚至千万数量级的访问情况下的性能指标是如何实现的,对于这样的程序员,你给他深蓝那套系统,他也做不出太极链的并访能力。性能需求指标中,稳定性,并访支撑能力以及安全性都很重要,作为程序员需要评估该模块在系统运营中所处的环境,将要受到的负荷压力以及各种潜在的危险和恶意攻击的可能性。就这一点,一个成熟的程序员至少需要2到3年的项目研发和跟踪经验才有可能有心得。

5:复用性,模块化思维能力
经常可以听到一些程序员有这样的抱怨,写了几年程序,变成了熟练工,每天都是重复写一些没有任何新意的代码,这其实是中国软件人才最大浪费的地方,一些重复性工作变成了熟练程序员的主要工作,而这些,其实是完全可以避免的。
复用性设计,模块化思维就是要程序员在完成任何一个功能模块或函数的时候,要多想一些,不要局限在完成当前任务的简单思路上,想想看该模块是否可以脱离这个系统存在,是否可以通过简单的修改参数的方式在其他系统和应用环境下直接引用,这样就能极大避免重复性的开发工作,如果一个软件研发单位和工作组能够在每一次研发过程中都考虑到这些问题,那么程序员就不会在重复性的工作中耽误太多时间,就会有更多时间和精力投入到创新的代码工作中去。
一些好的程序模块代码,即便是70年代写成的,拿到现在放到一些系统里面作为功能模块都能适合的很好,而现在我看到的是,很多小公司软件一升级或改进就动辄全部代码重写,大部分重复性工作无谓的浪费了时间和精力。

7. 请问6年经验程序员工资多少合适

做6年还是个程序员?

你也太high了,现在也应该30多了把?

不过就算是个程序员,在上海这地方,有6年的工作经验,月薪不应该低于7k把
=============================================
楼下的,我有朋友在大学的时候 给人家兼职每月都3k了, 2年经验基本上6K了,你搞笑那,你给啊?程序员人一大了就不值钱了,30多岁,很少有人去要,因为你精力毕竟不像当年,很少有看到35岁以上还做程序员的呢,当然还要看你是哪种语言的, java 还是C# 还是Deplhi等等,不是我太天真,你6年都没有一点上进,自己就应该找原因,30岁你仍是程序员,你自己说你还有什么发展?我公司面试好多程序员,那些不都是有4、5年经验,10几个项目,纵观JAVA的程序员要求的薪水比其他的要高点、基本上都是6K以上。

在说一下2楼的,你以为你写写代码 公司每月就给你大把大把的钱啊?你也不看看这年头什么年代,公司裁员的成群,水平烂,水平好去微软了,还JB在这干嘛!
==================================================

同意LZ说的,现在大龄的程序员是很悲哀的、不过没办法,可以考虑一下另某职业或者其他的,呵呵,总不能活人把尿给憋死把,说不好换个工作比这还要好哪,也想想你几年来,天天对着电脑身体都怎么样了,上班不就那样,一月几k的薪水,吃吃花花,毛多没了,又攒不到什么钱的,偶尔可以考虑以下其他的、真的要是很有能力的话,你也不会在这很抱怨了,与其在这里抱怨,还不如脚踏实地的在学点东西,为今后考虑一下把!

一切安好!

8. 如何从初级程序员过渡到中高级程序员

在程序员圈,一直流传着这样一个传说,用发量来判断程序员的级别,这明显是种调侃。那么,中级程序员,相对于初级程序员,有哪些不一样的特质呢?
总得来说,比较于初级而言,中级程序员在执行层面属于攻坚力量,他们不仅能独立完成高档难度的开发使命,并且在用户体验(质量提高)和功能优化(优化效率)都能作更全面的考量。
以下,是小编总结的关于中级程序员七大特点,各位可以对号入座。
(一)善于沟通
程序员内向的居多,喜欢交流的很少,但中级程序员往往能够克服自己的内新的恐惧心理,多和同事交流。
甚至有管理者认为,程序员应该80%的时间,花在同事的交流上。不仅是部门内的同事,也还包括跨部门沟通,敲代码的需要经常与产品经理、运营的同事沟通需求。
日本不少跨国公司,甚至有让程序员去体验几个月销售员的传统。公司要求,程序员在敲代码的同时,也要能够理解一线用户的需求。
交流对于初级程序员了解技术的发展,也相当有好处:读读博客、学学新语言和框架、讨论讨论话题、看看同行在做什么。自扫门前雪,很难成为一个优秀的程序员。闭门造车型的程序员终将被时代的潮流所淘汰。
(二)对编程有激情
有些程序员干这一行只是为了挣钱,如果有更好的职业,他们会毫不犹豫的辞掉程序员的工作。
能够顺利晋升为中级程序员的人,往往热爱编程,喜欢钻研代码中的问题,他们感到能指挥电脑来帮助人们和自己解决现实生活中的问题是一种神奇的能力。当遇到问题无法解决时,他们会茶不思、饭不想,无法入睡。
每个人都有心理上的舒适区,但是中级程序员,会不断地突破自己心理上的舒适区。
他们很乐于经常去研究没有接触过的代码,也正因为这样,成长速度快的中级程序员会越来越熟悉不同的代码结构和设计模式。
(三)精通代码调试
几乎所有的程序员写代码都不是一遍就能写好的。精通代码调试 ( debug )很多人在写代码的过程中,经常会有的一个问题就是:为什么我写出来的代码不能运行?为什么运行的结果不是我想要的?
中级程序员非常快的就明白自己代码的问题可能是什么。代码调试是一个很重要的能力,但是偏偏学校里不教,面试的时候考官也不经常提及。那么怎么去调试代码呢?
代码调试是有一套方法论的。最简单的就是在代码里输出日志来判断,复杂一点则需要去接触一些高级的工具,或者直接带有 Debug 功能的编辑器。
(四)主人翁精神
部分初级程序员刚入行,可能还没有进入状态,往往认为自己是打工者,以打工者的身份和心态工作。
中级程序员却会把自己当成企业的主人,他们知道企业的利益和自己休戚相关。
成熟的程序员明白一点,作为一名优秀的企业员工,自己是生产者而非消费者。他们心中一直想得是自己能够为公司,为顾客创造什么价值,而不仅仅只想着待遇。
(五)工具型思维
中级程序员知道如何能更高效的完成任务,如何更能有效的解决问题。其原因是工具型思维,如同荀子所言,“君子生非异也,善假于物也。”
Facebook 前技术总监 Bobby Johnson 说,高效率的程序员都把时间花在制作工具上。很多人也认为工具是很重要的,但是他们并没有花时间去制作、整合自己的工具。但是,Jonson 团队最出色的员工耗费了他们 1/3 的时间在工具制作上,这些工具可以用来发布代码,监控系统,以及能让他们花更少的时间去做更多事情。
中级程序员遇到问题时,不钻牛角尖,善于利用外部工具解决自己的问题,特别是能熟练应用搜索引擎。
(六)刻意练习迭代速度
魔鬼在细节上,如果一个程序员想要提高自己的工作效率,就需要他能够不断地在细节方面,进行微创新,提高效率。
举一个例子,假设一个初级程序员,每次要花 12 秒钟去搜索某个函数是在哪里定义的。如果,他每天做这个动作 60 次,就要花 12 分钟去搜索函数定义。
中级程序员会选择用一个好一点的编辑器,每次找到函数定义只要 2 秒钟,那么他每天将节约 10 分钟,每年节约 40 个小时。如果能够找到 3 个这样的场景去优化一下,那么对于中级程序员来说,每年可以节约一个月的时间。
(七)系统学习
学习是要有方法的,尤其是在职场中,程序员的自我学习要符合两点要求:一是有结果;二是高效。因此,系统性学习,非常重要。
高级程序员系统学习指南如下:
第一步,源码分析。看看大牛是如何写代码的,提升技术审美,提升核心竞争力。
第二步,工程化。工欲善其事必先利其器,不管是小白,还是资深开发,都需要先选择好的工具,提升开发效率和团队协作效率,让自己有更多的时间来思考。
第三步,分布式。从深度到广度的完善自己的知识体系,准备迎接高并发大数据的挑战
第四步,微服务。绕微服务的通用模式,学习spring Cloud的常见用法及原理,让微服务的开发更加方便 快捷,让微服务应用更加稳定 可用。
第五步,性能优化。从JVM底层原理到内存优化 再到各个中间件的性能调优,做最科学和最严谨的性能调优。
第六步,并发编程。深入了解底层原理,不只是做一个开发者。
第七步,积极参加大牛的分享。
(八)总结
可以理解,对于初入职场的程序员来说,他们在内心也知道学习的重要性,但因为没有时间,被老板的需求给填满,没有精力去提升自我。
然而,根据人类的学习曲线来说,任何一门新的技艺,都是一条对数曲线。其分为两个阶段:缓慢期和高速发展期,即初期很慢,后期进展迅速。
如果,能够让程序员在刚进入职场的时候,便摆脱初级程序员的桎梏,直接拥有中级程序员的实力,是不是就能跨越学习曲线的缓慢期呢。
知名IT教育机构传智播客已开通了中级程序员课程,发布了全新的项目,想学习的小伙伴抓紧

9. 还有希望吗

看不明白,麻烦用陈述的方法叙说
事情的前因、经过、后果,说完后再校对下再发

阅读全文

与小姑娘六年成为高级程序员相关的资料

热点内容
dvd光盘存储汉子算法 浏览:757
苹果邮件无法连接服务器地址 浏览:962
phpffmpeg转码 浏览:671
长沙好玩的解压项目 浏览:144
专属学情分析报告是什么app 浏览:564
php工程部署 浏览:833
android全屏透明 浏览:737
阿里云服务器已开通怎么办 浏览:803
光遇为什么登录时服务器已满 浏览:302
PDF分析 浏览:484
h3c光纤全工半全工设置命令 浏览:143
公司法pdf下载 浏览:381
linuxmarkdown 浏览:350
华为手机怎么多选文件夹 浏览:683
如何取消命令方块指令 浏览:349
风翼app为什么进不去了 浏览:778
im4java压缩图片 浏览:362
数据查询网站源码 浏览:150
伊克塞尔文档怎么进行加密 浏览:892
app转账是什么 浏览:163