Java开发工作者每天在做什么?

JavaScript JavaScript 137 人阅读 | 20 人回复 | 2021-01-12

Java开发工作者每天在做什么?
回复

使用道具 举报

回答|共 20 个

简单350

发表于 2021-1-12 08:52:38 | 显示全部楼层

说下我的日常吧。
早上七点二十起床,洗漱,坐地铁,九点钟到公司打个卡,下楼买早餐。
吃完早餐看一眼公司的任务平台,有没有新任务,钉钉上有没有需要解决的问题,bug,如果有,就构思一下,着手开始写,然后放到测试环境,跟提出问题的人打声招呼,跟测试说一下,到某个环境了,让他们检查一下,没问题就等着迭代周期到了上线,有问题继续改。
如果没有新任务,新功能,就登录微信,群里开始吹水,同时打开一些java相关的图书,最近在看深入理解java虚拟机。有感兴趣的话题就在群里聊天,没有就看书,一会思考一会儿打字,很难被人发现我是在摸鱼。
熬到下班,如果没有紧急的事儿,准时开溜,一分钟都不多待,然后就是最难熬的挤地铁,感觉上八个小时班都没有挤一个多小时地铁累。
到家和女朋友看看吃外卖还是去外面整点好的,吃外卖就一起看电视剧一起吃,腻歪一会儿,我打我的游戏,她刷她的抖音。新买的赛博朋克2077,不过之前很少玩fps游戏,一开始又调的困难,被虐惨了,还是刺客信条放松心情,一路砍过去多爽。
偶尔晚上去健身,最近因为成都的疫情加上天气太冷了就没去过了。
周末就是宅在家里打游戏。


流水账结束。


给刚入行的兄弟一点建议,因为我也是培训入行程序员的,刚去公司,不熟代码,写不出来东西很正常,别说培训刚出来,就是老手,去接手新的业务,如果文档不全,交接不到位,也得好几天才能上手写。技术问题问搜索引擎,业务问题问同事,尽量参照项目之前的代码写,别想着创新优化什么的,先把功能完成了再说其他的。


加油。
回复

使用道具 举报

快乐人L

发表于 2021-1-12 08:53:02 | 显示全部楼层

我也是java培训出来的,18年五一过后开始培训,10月底开始面试,第二家就面试了(软通动力,外包华为,8K),面试的时候还录音了,回家后自己再听一下录音,在第一家面试失败后,重新组织了一下面试时的自我介绍,这样在面试开始的时候就给面试官比较好的印象。
在软通的时候是打两边卡,在华为打了卡就直接上班,一般是一二四加班到8.30(反正基本上我是卡着8.30下班, 不加班就6点),8.30有夜宵可以拿,拿完就溜美滋滋。当时去的第一天就是各种搞环境,因为是云桌面,又不能用外网,搞了一天才搞好,结果第二天就被华为的项目经理说效率太慢了(难受),第二天熟悉代码,第三天直接干功能,遇到不会不懂的一定要问,一般来说他们都还是会帮你解决的,刚开始写的时候可以照着他们之前有写过类似的功能写,注解要写好。
干了一周之后才知道可以申请外网,不过只能访问一些指定的网站(CSDN这些)。这个时候大概就熟悉了华为的工作模式。基本上就是有需求就做,没有就改bug,读代码,反正华为的项目经理基本上不会让你闲着。
在软通干了三个月就辞职了(个人原因),19年5月份重新找了一家做自研的,前后端都要自己干那种,进去感觉自己的代码能力和业务能力都和刚培训出来完全不一样了。
总之,不要想着第一份工作有多好多好,也不要在第一家公司太久了,就把它当做你入行的,然后第二份工作就可以好好的找一下了,基本上没有完不成的活,都会有一些多的时间。
到此结束!!
回复

使用道具 举报

快乐人L

发表于 2021-1-12 08:53:29 | 显示全部楼层

谢邀。已有答案的日常流水账居多,作为一名阿里巴巴普通java开发工作者,从工作模块和职责的角度,给大家分享一下我的具体工作范围,从个人经验角度也给出一点对新人的建议。


(点击下方主页关注我们,看更多阿里工程师技术干货分享(^-^)V)
阿里巴巴淘系技术

——————————————————————————————————————————
在阿里巴巴,像我这样的一个普通java开发工作者的工作时间普遍是早上9点到晚上8点。
具体工作内容可以分为开发,运维,答疑,每一项工作的时间占比对于不同岗位职责的同学比例也有所区别,在一个成熟的中间件或者是运维团队可能答疑运维的时间和工作量会多很多,而在一个初创的刚起步的业务团队可能开发工作会占绝大部分比例。
我的具体工作内容如下——
开发工作:

广义的开发工作的内容非常复杂,涵盖的范围也非常广,从最基础的开会讨论环节(例如需求评审或者是设计评审)到狭义的开发环节即代码Coding实现到测试和上线都是属于开发工作的一部分,详细来说开发工作包含了如下内容:


需求评审

在项目中,需求分析是最开始的工作,同时也是最重要的工作。在这一步骤中,开发人员需要和产品经理,测试等人员就有关于项目目标,需求理解,系统原型和术语定义等达成一致。


系统设计

在理解项目的目标之后就可以开始作系统设计,其中包含了技术选型(项目使用什么语言,使用什么框架,数据持久化选用sql/nosql,数据库又该选用什么),模块拆分(大到网关/入口/功能/基础设施的架构分层设计,小到具体功能间的耦合拆分设计),细节设计(通过诸如时序图,类图等描述某个功能或者设计的关系与流程,定义交互协议的数据格式),设计评审(通过团队内外评审的方式查缺补漏看看设计是否有错误或者是不恰当的地方)。
这一步在整体开发工作中有着至关重要的作用,一个好的系统设计可以非常有效地减少编写代码时的思考量和工作量。


代码实现

在完成系统或者是方案设计后,就可以按照预先定义的流程进行代码编写和实现,在完成编写后需要邀请1位以上的同学进行CodeReview评审代码的质量与逻辑的完备性。


测试回归

对于开发人员来说,测试主要是代码层面的和功能实现层面的测试,前者主要是编写unit test单元测试以方法或者类的维度验证代码的正确性,后者是功能编写完毕后进行全链路的测试从入口开始编造流量看整体效果是否和预期一致,通常这步也需要专业的测试人员介入,在出现异常问题时,需要进行debug和问题修复。


功能上线

任何一个功能或者是系统上线都是比较复杂的,引入流量前需要配置关键业务节点上的监控,发布过程中最开始先beta灰度并进行功能验证,确认功能正常,指标监控平稳后可以开始作分批发布(如果是大规模的系统集群),在发布过程中与完成后需要实时紧盯监控指标以防止出现线上问题。


效果验证

项目上线后就可以通过服务端的埋点日志数据进行筛选统计,查看上线后整体功能是否满足预期的目标。


文档记录

写文档是一个开发人员工作的本职工作,上述的每一个开发步骤都应该在项目文档或者是系统文档中予以记录。


运维工作

运维工作包括了日常运维包括系统容器的状态的管理(重启/置换/扩容/缩容),大促运维(预算申报,预案管理与演练,重保节点配置等)
举我本人为例,我负责的是淘宝直播互动消息扩散架构,在每次大促活动或者是头部主播(如薇娅或者是李佳琪等)有搞大活动,都会需要作直播间相关信息的提前配置与准备,确认容器状态都正常,这些都是系统运维相关的工作。


答疑工作

每个人负责的系统应该都只是一个系统链路的一部分,这种时候对于你的业务方就需要提供答疑工作: 帮助完成系统接入,帮助排查问题,解答功能细节等等,现在在阿里巴巴内部这部分工作逐渐转为由自动化答疑和排查工具来完成,但是还是免不了会出现疑难杂症需要开发人员介入来解决。


工作外的充电

阿里巴巴内部有一个ATA的技术分享论坛,在其中能看到各种系统设计介绍,疑难问题的排查亦或者是思维方法论等等,我们在闲暇时间都会在论坛上学习他人的分享,采坑记录或者是成功经验。
我们团队内部也经常会有技术分享和文章书籍介绍,例如《领域驱动设计》《重构》《Designing Data-Intensive Application》等等,这些必要的充电对于个人能力的提升也是非常巨大的。


对了,最后,作为先入行的前辈,给一点自己的经验和建议——


对新人的建议

一般情况下,团队内来了新人后会有一段时间来适应工作环境和内容,团队也会给新人配备一个mentor的角色,在阿里巴巴则称之为”师兄“来负责入职后的适应阶段。
新人做的第一件事情就是熟悉环境,包括同事间的相处风格,公司技术栈,中间件等等。在适应完成后一般主管会给你分配一些简单的任务比如一个模块功能的实现,新人就需要通过这样一个任务去落地,包括功能效果的实现,团队和上下游业务的熟悉了解等等。
最后给新人的一些建议就是要在工作中要多沟通交流,刚入职的时候对整体的业务和技术栈甚至包括自己担任的职责和负责的范围等等都会有疑惑,这是非常正常的一件事情。这种时候多和主管或者是mentor作沟通交流不断明确你的工作的目标和当前的进度情况,这样新人落地也会更加顺利一点。同时有时候新人同样在技术实现上也会遇到一些困难,这种时候除了需要靠自己多思考学习外同样需要多和同事讨论,向资深员工学习请教也会让你工作更加顺利。


(本篇内容答案作者:阿里巴巴淘系技术部 松香)
——————————————————————————————————————————
阿里巴巴集团淘系技术部官方账号。淘系技术部是阿里巴巴新零售技术的王牌军,支撑淘宝、天猫核心电商以及淘宝直播、闲鱼、躺平、阿里汽车、阿里房产等创新业务,服务9亿用户,赋能各行业1000万商家。我们打造了全球领先的线上新零售技术平台,并作为核心技术团队保障了11次双十一购物狂欢节的成功。
点击下方主页关注我们,你将收获更多来自阿里一线工程师的技术实战技巧&成长经历心得。另,不定期更新最新岗位招聘信息和简历内推通道,欢迎各位以最短路径加入我们。
阿里巴巴淘系技术
回复

使用道具 举报

简单350

发表于 2021-1-12 08:53:37 | 显示全部楼层

6年.Net,废柴,CRUD boy,自称三年Java经验,自学10天Java准备拿下Java外包offer,20k

放弃Offer,继续求职。
每天自然醒,面试,回去背背面试题,办了健身卡健身;特地买了Switch打游戏。
偶尔被妹子喊去旅游几天。疫情原因,机票便宜,例如飞哈尔滨机票只需要170+50。
就这样持续了一个多月。
偶尔被揭穿,毕竟不会linux,不会mysql,不会微服务,不会多线程,不会Java框架,不会Jvm,无所谓,就当玩游戏死了,下一局继续。
拿到的都是外包Offer,想想还是没接,继续面试。
后期无敌,中型以下公司,面试通过率100%。什么Juc、分布式、源码、多线程、JVM,唬的面试官一愣一愣的。
选择了离家最近不加班的中型公司,7点不到公司看不到一个人。
第一天上班,
偷偷问朋友:maven是干什么的?
然后被maven问题坑了一整天。。。


------分割线------
前十天,快速找到第一份Offer的过程在自己的博客里
10天,从.Net转Java,并找到月薪2W的工作(一) - 查士丁尼 - 博客园
10天,从.Net转Java,并找到月薪2W的工作(二) - 查士丁尼 - 博客园
10天,从.Net转Java,并找到月薪2W的工作(三) - 查士丁尼 - 博客园

鉴于不少人问面试经验,我干脆建群吧QQ群号:675094564
回复

使用道具 举报

万胜

发表于 2021-1-12 08:54:30 | 显示全部楼层

说一下我的日常吧
7:50  起床,洗刷。
8:15出门,地铁上刷刷知乎,知识星球,公众号..
8:45左右, 到公司楼下食堂吃点早餐。然后就回工位
9:05,组内站会,汇报一下昨天的工作内容,遇到的问题。以及今天的工作计划
9:30,打开钉钉,微信,IDEA,Chrome,PostMan,DataGrip等等(事实上公司电脑经常不关机),主屏幕IDEA,旁白的分屏会放浏览器等相关工具
11:30,中午吃饭,然后吹会牛,之后会桌子上趴着睡一会。
2:00 ~ 5:30,基本就是敲代码,或者改BUG。如果有新需求或者不明确的需求,可能回去找产品SOLO一会. 或者找测试的小姐姐谈谈理想,顺便确定一下她们提的Bug。有时候也会写跟前端对接的文档
5:30,写写总结,看看知乎划划水。有时候也会看看GitHub,V2EX等等。如果晚上加班太晚会去吃点饭。如果不是很晚继续coding。


当然以上只是每天大概做的。项目不忙的时候划水比较多。有时候撸代码累了,也会出去溜达溜达。
最后!
分享一下我整理的Java方向的思维导图。
胖胖胖虎阿:肝了一个月,我整理了上百张Java思维导图
回复

使用道具 举报

快乐人L

发表于 2021-1-12 08:54:38 | 显示全部楼层

对新人来说,初进公司,也不会给你安排难度大、量大的工作任务,可能还会有个老员工来带你。
另一方面,即使再简单的工作,对新人来说可能也有难度,这个没办法,只能多学、多摸索了,前期会辛苦点,过来磨合期,后面就会习惯了。
至于好奇Java程序员每天做什么,简单说就是开会、写代码、查资料、各种沟通、偶尔摸摸鱼……
如果想知道再详细的,我直接给你安排一个终极版
《中年架构师,悲催的一天》(本人自己原创的)
故事纯属虚构,但你细品,虚构中还有一点点真实。


主人公:大刘/某伪大厂架构师/35+,东北大汉,身高180,体重180,没有其他180了。
-------------故事开始-------------
六点,大刘被系统报警的短信惊醒,睡眼朦胧的看了下手机,一下子身子就坐了起来:
核心的交易系统出现了问题
这下子麻烦大了!
大刘小心翼翼的去到厕所,匆忙的洗漱完毕,又踮起脚尖,慢慢的蹭出门去,生怕吵醒了老婆孩子。
出了门,大刘庆幸了下,幸亏昨晚加班回来晚,没有和老婆孩子一个屋子睡,没吵到她们。
大刘赶紧开车赶往了公司,路上嚼了块口香糖,系统出问题扣钱是八九不离十了,倒不是心疼钱,而是担心出了问题,影响公司业绩,工作保不住。现在的经济环境,失了业,那真是要了命了。
还好出来的早,一路顺畅,七点左右就到了公司。
到公司之后,项目团队中已经有几个人到了。各个人脸上不见轻松,看来问题不小,也不好解决。
大刘拖着许久未锻炼的肥胖身躯,挪到座位上,迅速的打开了电脑,一天的工作就开始了。
九点半,经过找原因、判断、否掉原因、再找、再否掉……折腾到了大家正常上班时间,在一分一秒的焦急、忐忑中,终于找到原因修复了问题。
大刘吁了一口气,现在是非常时期,公司效益不好,稍微不注意就砸了饭碗。在业务高峰时段到来之前确认了问题,还算能有个交代,大致上不会被踢走了。
解决问题后,大刘打开 JIRA,发现那密密麻麻的列表,头不禁又痛了起来。刚准备着手挨个解决,产品找上门来,要临时开一个紧急会议。
会上产品提出需要对已有的功能点做一些改造,听了此话,大刘内心忍不住呵呵冷笑起来:
“话虽然说的好听,其实就是对以前设计的自我否定。从事这个行业这么多年以来,产品经理们依然重复这些让人讨厌的套路。只是我也不再年轻,想着家里的各种贷款,老婆的各种包包,孩子的各种补习班……我的棱角随着时间的推移,早已磨圆了。”
大刘话不多说,答应了对方的改造需求。
十一点钟,从会议室里爬出来的大刘又被领导叫到了办公室。
领导严肃对系统出现的问题提出批评,认为发现问题慢,解决问题慢。
大刘内心忍不住暴怒:
“这些技术欠账,领导你自己不清楚怎么回事吗?我屡次提出来隐患,要求针对隐患和技术欠债进行专门的处理,优先级却屡屡被压低,永远在开辟新的项目,对旧问题永远在治标不治本,风险提出来也不被当一回事。我们的系统已经复杂的像个迷宫了,但是现在还继续把迷宫搞的更复杂。淦!”
但是,大刘想到自己快四十岁了,既没有而立,对前途也没有不惑,最终压制住了那快从嗓子中冲出来的怒火,假装从容的接受了处罚:
罚款一千,全部门通报批评。
大刘面带微笑,准确说是挤出来的苦笑,卑微的退出了领导办公室,压了压那因怒火和憋屈而翻滚的肠胃,再度回到了座位。
十二点半,大刘从领导办公室回到座位的时刻,胃已经绞起了圈。
大刘原本很爱吃,但是已经很久没有涨过工资了。开销却在加大,家里的存款在一点点减少。
大刘的午饭质量已经从两年前的一两个炒菜配米饭,退缩到十几块钱的套餐了。
现在有点晚,楼下食堂快餐也没什么菜了。大刘随意吃了点凉皮加个肉夹馍,匆忙糊弄饱了肚子,又回到了座位上。
一点半,商务叫醒了一点才回到座位正在打盹儿的大刘。
商务说有了一些”绝妙”的想法需要技术支持。
大刘看到对方毫无自觉的迷之自信,胸部一阵火烧:
”你有啥绝妙想法,连部门的基本业务流程都没了搞清楚。从来都是接触了下商户就扔给产品和技术做后续,你连基本的跟进都没有。“
虽然大刘心里已经非常不情愿了,但是想到未知的前途、孩子的笑脸、媳妇和父母……这一切一切让大刘又变得温和下来,耐着性子听商务的绝妙想法。
果然,依然是一如既往的狗屁糟糟。竟然让做一个爬虫,爬取用户的银行流水。
大刘忍不住想大声的质问他:
“是否看过业内相关的任何新闻?是否关注过业内的任何动态?不知道这有法律风险?回头进去了咋办?”
但是老板很看重商务,因为他有人脉,能给公司带来真金白银。
于是大刘只能同时小心翼翼的举了几个例子来试探对方,并表示这些还需要和法务进一步沟通。
此时商务的表情仿佛在说:“这和法务有什么关系?赚钱要紧!”
为了防止商务在老板面前告状、说坏话,对于商务的大胆提议,大刘只能憋屈着谈了谈技术的实现方案,并再三表示会先好好调研。
好不容易把商务打发了,大刘感觉自己都快窒息了。
三点,大刘再一次回到座位,此时,已有几个开发工程师在桌旁等候了。
某个系统中突然出现了偶发性的数据库报错,导致业务卡死,已经有客户投诉了。
大刘的内心再次灼烧起来,胃部开始隐隐作痛。
经过一道道严密的安全验证后,进入了对应的日志服务器,开始翻山越岭似的再度找起问题来。
很不幸,这个问题涉及到跨部门了,经过各种低的不能再低的低效沟通,最终修复了问题。
此时,已经开始陆续有人打卡下班了。
六点半,到了大刘的名义上的下班时间了。
商务和市场迈着轻盈的步伐、谈论着晚上的安排开始走出公司。大刘也跟着走出,只是,他是到楼下吃饭而已。
由于一个项目今晚上要上线,怕出问题,需要大刘留在公司一起确保上线成功。
吃完晚饭后,大刘终于松了口气,打开手机看着小说等着晚上上线,一天中难得的消停。
八点,上线开始。
这该死的微服务思想,公司一个项目弄了大几十个节点,加上镜像,一百多个节点。
由于公司裁员裁的团队人手不足,根本没人没时间做辅助工具链,导致一直只能半手工半自动的上线。
不出意料,中间又再度出了问题。修改、测试、再次尝试上线。
等到上线后的彻底测试验证完毕,又是静夜无人了。
十二点半,大刘摊在了停车场的车内,眼皮像坠了几个铅球一样。
大刘不禁遥想起自己初入职场的意气风发,年纪轻轻成为核心技术骨干的指点江山,一切已经雨打风吹去了。
接近两百斤的臃肿身躯,卡在车内的方向盘与座位之间,留在面目上的只有疲惫和冷漠。带着被人赞赏越来越会沟通的奴才般嘴脸,已经从 IT 精英人才变成了随时会被拍在沙滩上的前浪。
一点,在车内休息了一会的大刘,嘴里塞了块咖啡味的口香糖,一路上向家飞驰。路灯的灯光连成了一条线,大刘不禁感叹,已经好几天没能看到孩子一眼了,十个月之前答应老婆的旅游到现在还没兑现……
------end------
看完别被吓着,故事嘛,肯定有虚构、有夸张。
不过也别觉得是纯故事,过来人看了还觉得有些真实。
回复

使用道具 举报

简单350

发表于 2021-1-12 08:55:07 | 显示全部楼层

曾经的过来人,告诉你不要慌, 我是18年培训完.然后和大多数培训机构的建议直接编简历两年工作经验,刚进公司慌,总觉得啥也不懂不会,就刚进去的话公司会给你时间.让你熟悉公司的代码,派给你的任务很简单也给你留了时间,完全够你掌握,当初新进公司,是一家创业公司啥都得自己弄.然后因为慌.天天自己加班,为了不露出破绽.,大概过了几个月觉得也不是那么难,现在想起来往往第一步比较难,总感觉自己这个水平怕被淘汰.培训出来的基础不牢,而且很多都只是听过压根没去理解他,到了工作后用到会觉得恍然大悟,要学的地方还是很多的,归根结底还是心里没底气,只要脸皮厚,大不了被辞了么,死猪不怕开水烫,我当初就是这样想的,然后后面发现其实也还好,有时候自己担忧过头,而且你也能从中学到一些东西,心态摆正,努力把技术补足,那就没啥问题,
回复

使用道具 举报

万胜

发表于 2021-1-12 08:55:20 | 显示全部楼层

开发前,拉着测试听产品在那扯淡,反正这产品文档也是xjb写的,但你要靠自己极强的业务理解知道到底要干什么
开发中,你才真正知道原来产品文档真的有问题,但是又找不到他,因为他总在写下一个lj文档的路上
测试时,总能给你一堆莫名其妙的参数,然后又得继续找产品确认异常参数如何处理,但你依旧很难找到神出鬼没的产品。
最后总算测试这边过了,可以准备上线了,但为了不造成广泛影响,还得半夜或者凌晨发版,别忘了先烧个香拜个佛求个平安,然后灰度发布后还得睁开眼观测各种指标是否平稳,终于熬不住了让运维直接发布全部容器,半夜回去睡觉了。
回复

使用道具 举报

万胜

发表于 2021-1-12 08:56:19 | 显示全部楼层

面试造火箭,入职拧螺丝。在担心这个问题之前,你得先确定你已经能通过造火箭的关卡,然后再来想实际工作应该如何完成领导交代的任务。
如果是还没培训的话,我会先建议你问清楚自己,是不是真的喜欢编程,喜欢研究技术。只有自身很感兴趣的,才建议你入行。
现在既然已经培训完了,那么你大概的评估下你培训这段时间内技术提升怎么样,每天课堂知识大概能吸收多少,自己有跟着把代码复现出来吗?遇到问题是会自己网上找答案解决还是得靠问别人来解决等等。。。
现在大多数的公司都是面试造火箭,入职拧螺丝,基本是刚培训出来的你去面估计也就是3年以内的工作年限吧,只要你平时代码敲得勤快,整体逻辑能捋清,领导交代的活基本都是能干完的。
但是代码方面可能会写得很烂,多层for循环,if嵌套啥的是常有的事情。建议安装一些代码监测插件,扫描发现问题后自己尝试着对代码做优化。平时多看看书,看看源码学习一下人家的设计理念等优秀的地方。
建议多看书,一本出从写作到初版会经过反复推敲的,里面的内容错误的情况还是比较少的,不像网上很多博客写得比较含糊或者是纯粹就自己的理解没经过验证那种,我在这上面踩过不少坑,最后面还是得自己去debug源码找到问题来解决。
网上电子档的书籍挺多的,可以先下一些看看适不适合自己看,合适了的再买实体书抱着啃会更好。
这里给你一个提供一个书籍参考地址:
https://github.com/unidentifiable/java-other-books
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号