关于工程师:一名全栈工程师的技术实践之路

一、前言1.1 什么是全栈全栈开发是指开发人员把握了前端、后端以及数据库等多个畛域的常识和技能,可能独立实现整个我的项目的开发工作。在需要交付过程中,能够负责从我的项目的后期剖析、设计到前期开发、测试、公布等整个过程,可能疾速定位和解决问题,进步开发效率和产品质量。 1.2 为什么做全栈我认为全栈的推动是环境变动、技术倒退导致的必然结果,全栈带来的益处次要有两方面: 升高沟通老本,晋升交付效率:精细化分工导致的后果是协同老本大大增加,尤其是对于跨多个团队的我的项目,每个开发可能找对接的同学都得找好几个人才能找到,影响整体的需要交付效率。当下,由单人或单团队实现需要的闭环开发,升高协同或者是晋升产品交付效率的最快形式。从全局视角加深畛域业余度、加强集体竞争力:首先,无论是前端技术、客户端技术还是服务端技术,研发平台、框架、标准都根本定型,学习老本升高;其次,通过学习全栈技术,能够减少技术视角的广度,将来进行开发工作时,不再偏居一隅,能够从整个我的项目的角度登程,设计更正当的架构;最初,将来市场须要的也是全栈型开发同学,在《Stack Overflow 2021 寰球8W名开发者调查报告》显示排名前三别离是:全栈工程师(49.7%)、后端工程师(43.7%)、前端工程师(27.4%)。二、全栈需要开发SOP全栈技能不是无中生有,须要每个开发学习跨栈常识,并且一直实际,能力实现全栈开发、独立交付需要。为此,推广了一套比拟规范的需要落地SOP,保障需要的交付品质。 2.1 需要分级分级规范 分级流程 2.2 需要评估对全栈需要的评估次要分为以下四步: 前端同学依据需要分级流程实现需要定级与业余前端协商后指定需要承接同学承接同学评估工时工时对焦及优化(业余前端、承接同学)2.3 需要开发 & 公布需要开发 & 公布将以一个全栈需要实际为例进行介绍,详见第3章,次要能够分为以下几步: 筹备工作代码开发本地调试公布2.4 需要品质保障全栈推动须要建设在需要交付品质不变、效率晋升的前提下才有意义,保障全栈需要的交付品质次要通过CR和上线追踪的形式。 CR 所有全栈研发的代码由业务前端owner或师兄强制CR;发动CR机会,在实现我的项目开发和自测后,全栈同学需及时提交CR给师兄和业务前端owner;师兄和业务前端owner实现代码review后,全栈同学依照要求进行代码修复;线上追踪 统计千行缺陷率、可自测发现率、线上问题数、预警量等指标,纳入全栈交付品质统计;线上故障由业务前端owner和理论开发人独特解决,线上缺点由全栈开发同学修复;2.5 需要复盘全栈之路不可能一帆风顺,两头总是会有各种磕磕绊绊,失败是在劫难逃的,失败不是胜利之母,好的复盘才是,所以全栈路上,迭代复盘必不可少。商家技术团队每两周会对全栈迭代进行一次复盘,总结Highlight、Lowlight,以及后续的Action。 三、全栈需要实际3.1 背景先知平台服务于阿里巴巴国内站行业小二,通过寰球趋势洞察、站内供应剖析,输入品类策略,赋能行业小二品类布局。本需要展现站外热搜关键词榜单,不便行业小二疾速洞察站外趋势,Demo如下: 3.2 筹备工作3.2.1 环境筹备进行前端开发工作前,须要筹备本地编译环境,依照我的了解,对前端的相干编译工具类比到后端不便大家了解: 3.2.2 相熟代码在正式开发之前,拉取前端我的项目代码,学习我的项目代码构造,遵循前端开发标准。 alita-xianzhi |--- hook // 钩子脚本 |--- .eslintignore // eslint格局校验疏忽文件 |--- .eslintrc.js // esliint格局配置文件 |--- package.json // 依赖包版本(相似pom.xml) |--- src // 源代码 |-- common // 定义我的项目常量,比方目录,罕用文字说明等 |-- components // 公共组件目录 |-- entry // 跳转页 |-- pages // 页面代码,文件名与 URL 门路绝对应 |-- service // 服务,接口申请地址 |-- utils // 专用办法 |-- index.jsx // 主页 |-- index.scss // 主页款式css |-- tab-config.js // 路由配置3.2.3 新建变更每次前端开发都须要新建变更,最初造成一个独立的版本号。在前端页面展现时,通过版本号决定出现的页面版本。 ...

August 23, 2023 · 2 min · jiezi

关于工程师:极客时间训练营高级Java工程师体系课2023版20僧言古壁佛画好

download:极客工夫训练营高级Java工程师体系课2023版2.0 Node.js+Koa2框架生态实战 - 从零模仿新浪微博前言Node.js是一种基于Chrome V8引擎的JavaScript运行时,能够使JavaScript在服务器端运行。而Koa2则是一个轻量级的Web框架,它应用了ES6的async/await语法,让异步代码变得更加简洁明了。本文将介绍如何应用Node.js+Koa2框架来模仿新浪微博的性能。 环境筹备首先,咱们须要装置Node.js和npm,能够从官网下载并装置。而后,应用npm装置Koa2和相干的依赖: npm install koa koa-bodyparser koa-router koa-static koa-session sequelize mysql2数据库设计咱们应用MySQL数据库来存储数据,并应用Sequelize ORM库来操作数据库。上面是咱们所须要的表构造: 用户表字段 类型 形容id INT 用户IDusername VARCHAR 用户名password VARCHAR 明码微博表字段 类型 形容id INT 微博IDcontent TEXT 微博内容userId INT 发布者ID关注关系表字段 类型 形容id INT 关系IDuserId INT 用户IDfollowerId INT 粉丝ID性能实现用户注册和登录咱们首先须要实现用户注册和登录性能。通过Koa2提供的路由和中间件机制,能够很不便地实现这两个性能。 // 注册router.post('/register', async (ctx, next) => { const { username, password } = ctx.request.body; // 查看数据库中是否已存在该用户名 const user = await User.findOne({ where: { username } }); if (user) { ...

May 24, 2023 · 2 min · jiezi

关于工程师:干货一图搞懂有源晶振和无源晶振的12点区别

 一、什么是晶振晶振是在电路中提供频率基准的被动元器件,它能产生频率高度稳固的交换信号,使得电路工作在一个稳固的频率范畴内,广泛应用于汽车、数字、电子等行业。 晶振可分为有源晶振与无源晶振。个别咱们说的“晶振”指的是有源晶振,而无源晶振通常叫“晶体”,或者叫“谐振器”。两者最大的区别是:有源晶振本身即可起振,而无源晶振则须要外加专门的时钟电路能力起振。 二、有源晶振和无源晶振的区别 总体来看,有源晶振的精度、稳定度等方面均要好于无源晶振,尤其是在精细测量畛域,大部分用的都是低档的有源晶振,以不便把各种弥补技术集成在一起,缩小设计复杂性。 另外,因为本身减少了超振电路,有源晶振体积个别都会比无源晶振要大些,但当初很多有源晶振都是表贴的,体积得以放大,与无源晶体差不多甚至更小些。体积变小使得有源晶振的利用更宽泛,尤其是生产电子畛域。

January 13, 2023 · 1 min · jiezi

关于工程师:专访-CCF-CED-工程师文化日筹委会带你走进大会幕后的故事

近年来,AI、云计算等前沿技术的继续倒退,正一直减速寰球数字化转型过程。在以技术为驱动力的当下数字社会里,工程师文化也开始被寰球各地器重甚至遍及开来。自去年国内“第一届中国工程师文化日 CCF CED ”举办以来,该激发工程师后劲的流动便备受业界关注。往年 10 月 23 日,行将于北京举办的 “CCF CED 2022—第二届 1024 中国工程师文化日”精彩来袭,届时国内工程师、程序员及软件技术爱好者们将再次欢聚一堂,独特为推动行业倒退奉献更多力量。 目前,“CCF CED 2022—第二届 1024 中国工程师文化日”的最终出现已进入倒计时,为了更好地出现 CCF CED 工程师文化日内核,SegmentFault 思否特地专访了幕后辛苦筹备本次会议的 CCF TF 工程师文化 SIG 组的成员们,开掘大会筹备背地的故事,也与大家聊聊何为工程师文化、工程师文化的意义与价值。一起来看看吧! 对于 CCF CED 及筹委会团队CCF CED:1024 中国工程师文化日 CCF CED(China Engineers' culture Day),是面向技术型组织的工程师文化日,旨在连贯技术型企业中的技术委员会主席、技术文化与品牌负责人、技术学院院长,以及宽广工程师群体。 筹委会 SIG 组成员:吴华,CCF TF主席、百度技术委员会主席刘付强,CCF TF 工程师文化 SIG 主席、msup创始人兼 CEO应阔浩,CCF TF 工程师文化 SIG 副主席、自若技术委员会主席郭悦,CCF TF 工程师文化 SIG 委员、亚马逊开发者市场总经理崔婧,CCF TF 工程师文化 SIG 委员高阳,CCF TF 工程师文化 SIG 委员,SegmentFault 思否 CEO余知权,CCF TF 工程师文化 SIG 委员、连尚网络技术委员会执行秘书石松,CCF TF 工程师文化 SIG 委员仲博文,CCF TF工程师文化SIG委员,小红书技术品牌&单干总监 ...

October 17, 2022 · 1 min · jiezi

关于工程师:揭秘亚马逊云科技软件开发工程师团队

在亚马逊云科技,有着这么一群人,他们常常被认为只会写代码,而不善言辞。但这只是大家对他们的误会。他们的工作不仅须要懂开发、善沟通,还须要可能dive deep用户的需要。他们就是亚马逊云科技的 Software Dev Engineer! 明天邀请到了亚马逊云科技的五位不同的 SDE,他们将会分享各自的工作内容、在公司的各种流动、他们闪光的工作我的项目以及在亚马逊云科技的各种经验。 首先,先让认识一下这五位共事吧! 接下来,通过问答的模式,请他们为咱们介绍一下,他们不一样的工作与生存吧! Q:简略的介绍一下本人和本人的工作吧? Denghui:我是亚马逊云科技 Payments 部门的软件开发工程师 SDE,属于亚马逊云科技 Commercial Platform 大部门。日常工作是跟西雅图和温哥华 Commercial Platform 的不同业务团队单干,一起为中国的企业和集体开发者提供更好的云计算平台应用体验。 Huiqi:我是一名软件开发工程师,与 Denghui 一样,负责亚马逊云科技的领取零碎的开发工作。咱们亚马逊云科技领取团队是一个 global 团队,散布在加拿大、美国和中国,咱们中国团队的次要工作更侧重于为中国用户提供更不便的、更有中国特色的领取形式,帮忙用户简化换汇的手续和流程,为公司更高效的收款。 Sutong:咱们团队正在搭建一套 data platform,我目前负责的局部是这个项目前期的调研和设计。这个我的项目的用户是亚马逊云科技的 Marketers 和 Sales 团队,通过提供牢靠和高实时性的数据,咱们能够缩小他们的手动重复性工作,进步工作效率。 文涛:在促成亚马逊云科技的商业平台在中国区的本地化过程中,我会负责开发中国用户在账单周期内所需的任何性能;通过编写、公布软件或服务,反对用户在应用亚马逊云科技的服务时所需的性能及本地化需要,并将广泛实用的性能推广到寰球其它地区。 Q:当初退出亚马逊云科技的起因是什么呢?能够分享下激发你每天工作的能源有哪些吗? 超群:亚马逊云科技最吸引我的中央在于它始终以用户为核心,通过逆向思维法,疾速迭代产品去满足用户的需要。同时,在这里,没有一项工作是反复干燥的。我须要一直的学习,积攒和翻新去应答一直变动的用户需要和模糊不清的问题。It is always Day One. Denghui:技术方面亚马逊云科技是业内标杆,工作中很多用到的技术和计划都曾经是行业内的事实标准。同时,我始终是长期主义思考的拥护者,所以也想深刻近距离学习亚马逊企业文化的执行细节;这也是吸引我退出亚马逊云科技的起因。 Sutong:我置信云服务无疑是将来最有前景技术方向之一。在亚马逊云科技,可能学到更多的先进技术,加强本身实力。而在亚马逊云科技工作中,对于未知领域的摸索、对于我的项目顺利交付的渴望激发着我每天的工作。 文涛:在亚马逊云科技能够理解和学习到如何构建撑持世界级流量的弱小服务的技术,而且开发的软件能够成为这些服务的一部分,是一件十分有吸引力的事件。同时亚马逊简略通明、用户至尚的企业气氛,对工程师来说也是非常适合的。在这里,通过更加精确地剖析用户需要,利用云服务帮忙用户解决问题,是一件十分有价值感的事件。同时,在公司外部学习、实际和推广更好的技术,更高效的工程实际,跟同样有技术谋求的共事合作,一直地晋升本人的技能,也是十分有能源的。 Q:你在亚马逊云科技最亮眼的成就和遇到最大的挑战有哪些?同时,对于你当初的职责,大家最多的误会会是什么? 超群:在亚马逊云科技,咱们疾速上线最小化的产品,听取用户第一手的的意见,而后一直的去迭代和优化咱们的产品。例如咱们发现用户人工填写系统配置信息尽管简略,然而却让咱们的 onboarding 体验不间断。在取得了用户反馈之后,咱们设计和实现了全自动化的 onboarding 体验,极大的晋升了用户体验,失去了用户的统一好评。当然,在开发中也常常会遇到挑战,我感觉最大的挑战是用户往往晓得本人不想要什么,却很难明确的说出想要什么。咱们须要一直的通过最小化的性能去明确用户含糊的需要。对于 SDE 这个岗位,人们往往会认为是更偏差实现需求。然而在亚马逊云科技,咱们激励每一个 SDE 去发现和发明新的需要。通过一直的翻新,一直的尝试给咱们的用户带来更好的产品。 Denghui:我感觉最大的挑战是中国业务本地化和寰球业务一致性的均衡,这决定了咱们业务的 scalability,一个寰球可疾速扩大的零碎设计自身就是很大的挑战。 Huiqi:去年退出团队之至今,我参加了新我的项目的设计和开发,次要去解决如何在现有寰球的领取零碎里退出中国特色的领取形式,这波及到很多组的单干协调,也须要十分全面粗疏的思考。至于误会,我发现国内对程序员的误会还挺深的,特地是对女程序员;哈哈。如同在大家眼中,程序员就是不太懂得沟通交流,不善于与人打交道的。但其实写代码其实只是咱们的一小部分工作。在写代码之前,咱们须要先和产品经理沟通明确需要,确定好了新性能的上线日期,而后再把这个大的需要拆分成小需要,并依据排期计算出须要的人力,而后才开始技术方面的安顿 - 设计出解决方案及技术选型,这时候还要和更 senior 的工程师去探讨这些设计,给出优缺点剖析,最终达成统一后才会真正进入开(代)发(码)的工作。 文涛:我最亮眼的工作成就是构建了在宁夏区域供数十个服务、上百个接口应用的公共基础设施,高效且稳固地反对这些服务的运行。最激动人心的我的项目参加构建面向整个亚马逊云服务的数据治理平台,通过这个平台能够实现多种对于数据应用、治理的性能并反对对应的利用场景。在亚马逊云科技这种体量的企业,外部有数量微小的服务以及基础设施,很多问题或者用例会随着规模的扩充而变得复杂。在更高层面为大规模的零碎设计解决方案,是工作中比拟有挑战性也是比拟乏味的问题。后面的几位共事都提到过了咱们面临的误会,我也想再分享一下,大部分人认为工程师的职责只是编写软件,但其实工程师须要对相干的业务有尽量多和粗浅的了解,以此能力更好地设计零碎。同时工程师心中也要有对业务以及零碎的久远愿景,并时刻反思和测验,以激励本人构建更有创新性也更有价值的零碎。 Q:在你的职业生涯中,与团队有过哪些粗浅的回顾? 超群:在2021年的Hackathon中,咱们团队通过三天的工夫实现了一个能够帮忙团队解决反复工作和答复常见问题的智能语音助手。Denghui:一起Hackathon,一起探讨新的创意,一起从零搭建新的业务。这个过程很有挑战,也播种很多。 Huiqi:印象粗浅的就是刚退出团队时就赶上了团建,大家一起去野三坡玩漂流,在这个过程中也让我能更快的融入团队。日常工作中,咱们也会常常 happy hour,桌游奶茶聚餐轰趴你想要的咱们都有。同时,为了让咱们疾速相熟领取业务,咱们团队还组建了本人的小小图书馆。 ...

May 27, 2022 · 1 min · jiezi

关于工程师:报名TF54工程师成长地图与卓越研发组织打造

本文转载自公众号:中国计算机学会 打造组织与工程师双赢的工程师文化,解码组织策略演进的产研门路、学习地图,对齐要害岗位降职通道与能力造就。如何打造组织能力积淀?如何经营好技术委员会?咱们期待通过4个案例来为大家带来实际分享。 4月28日流动开启,欢送各位报名加入! 为技术团队提供顶级交流平台 CCF TF第54期 主题:工程师成长地图与卓越研发组织打造 2022年4月28日 19:00-21:00 腾讯会议 长按辨认或扫码报名 打造组织与工程师双赢的工程师文化,解码组织策略演进的产研门路、学习地图,对齐工程师要害岗位降职通道与能力造就,是业界越来越关注的工程师文化方向。 CCF TF工程师文化SIG始终致力于为工程师成长与倒退提供交流平台。4月28日,咱们邀请来自msup、快手、亚马逊和Agilean多位重量级嘉宾,从各自业余钻研畛域登程,为工程师人才培养带来实际干货和典型案例,期待通过4位嘉宾的重磅分享为大家带来启发和帮忙。报名加入本场流动,4月28日,咱们线上见! 会议安顿TF54:工程师成长地图与卓越研发组织打造 主持人:应阔浩TF工程师文化SIG主席,自若技术中台负责人 工夫主题负责人19:00-19:05流动致辞刘付强 CCF TF工程师文化SIG主席,思博(msup)有限公司创始人兼CEO19:05-19:10嘉宾致辞吴华TF主席,百度技术委员会主席19:10-19:35《围绕「工作场景」设计团队学习地图实际》李宁msup产品副总裁19:35-20:00《品质内建所带来的金融科技人才梯队变动》吴穹Agilean首席咨询师20:00-20:25《以翻新文化驱动云时代的产品研发》王宇博亚马逊云科技大中华区开发者关系总监兼首席开发者布道师20:25-20:50《互联网产研人才培养的实际》周祥快手业余力人才倒退核心负责人20:50-21:05嘉宾授予证书刘付强21:05-21:10QA嘉宾、观众所属SIGCF TF工程师文化 会议主席 刘付强 CCF TF工程师文化SIG主席,麦思博(msup)有限公司创始人兼CEO 个人简介:北京微上信息技术研究院院长,msup创始人兼CEO,曾服务于微软中国DPE团队,2007年在中美两地开办麦思博(msup)有限公司,建设客座参谋服务模式,签约千余位技术顾问、翻新教练,打造技术型企业6个要害岗位220+项工作场景造成行业值得参考的“角色地图”,通过壹佰案例钻研、MPD工作坊等培训征询形式,累计帮忙2000余家技术型企业晋升研发治理、产品翻新,以整合寰球当先教训实际为己任,为中国技术产业疾速倒退提供智库,让先进经验流动起来,To be better。 应阔浩 CCF TF工程师文化SIG主席,自若技术中台负责人 个人简介:架构委员会主席、技术学院院长。推动自如云原生体系落地,SLA实现3个9到4个9的冲破;从0到1搭建自若的技术气氛建设工作,成立了自若技术学院、架构委员会,推动技术规范、行业新技术落地;牵头打造自若技术新人训课程,减速新人的疾速融入;绘制自若工程师技能图谱,为员工倒退、降职提供可落地的动作。 特邀讲者 李宁 msup产品副总裁 主题:《围绕「工作场景」设计团队学习地图实际》 主题简介: 以msup角色地图我的项目作为次要案例,分享过来1年打造面向产品研发岗位角色学习地图的过程、思考、挑战。 克服经典起步阶段三大难,不愿、不敢、不会需要剖析,基于「工作场景」设计学习地图,适宜的就是最好的咱们与技术专家一起撰写学习地图内容的5个次要步骤从2.0到3.0版,「学习地图」迭代降级过程中的思考和实际以「学习地图」为工具,积淀梳理研发经验过程中的思考和实际个人简介:现msup产品副总裁。先后在CSDN、极客邦任职产品经理、业务线产品总监。多年线上学习类产品的设计和产品治理教训,与团队成员一起,联结技术社区专家,从0-1打造了,面向企业研发团队的学习产品「StuQ技能图谱」、「研发岗学习地图白皮书」等我的项目。 吴穹 Agilean首席咨询师 主题:《品质内建所带来的金融科技人才梯队变动》 主题简介: 1、为什么品质内建是大势所趋 目前质量保证模式的不可持续性(老本,人员供应)2、品质内建下的岗位角色变动 需要品质晋升与产品经理专岗化品质左移与开发人员技能机构变动TSE 自动化测试反对工程师的衰亡传统功能测试团队的转型DevOps衰亡和传统运维人员转型个人简介:吴穹博士于 1998 年从北京大学计算机系毕业并获博士学位,师从中国软件工程奠基人——杨芙清院士,在校期间,曾加入国家重大科技攻关项目“青鸟工程”。毕业后,他创立了 Rational 中国技术支持团队,在华为、中兴、大唐、普天、东信、首信等公司胜利推广并配置了管理工具 ClearCase / ClearQuest。 2004年,他应邀到美国IBM Rational研发总部工作,任寰球产品经理直至 2007年底回国。在此期间,他领导开发了ClearCase新一代客户端软件 CCRC,实现面向寰球用户的新产品需要收集与用例转换,排定迭代开发计划并全程参加变更管制,深刻理解了软件工程技术在寰球范畴内的利用与实际。 王宇博 亚马逊云科技大中华区开发者关系总监兼首席开发者布道师 主题:《以翻新文化驱动云时代的产品研发》 主题简介:随着云计算宽泛而深刻的倒退,产品研发在状态、工具、流程等方面都在产生着天翻地覆的变动。企业文化曾经是影响创新性产品研发的最外围因素,并且成为企业进行继续翻新最长久的内生能源。在云时代,文化,包含架构、机制、组织等泛滥方面都体现出许多新的特色。翻新文化正在驱动产品研发,同时两者也在深度交融。 个人简介:王宇博,毕业于清华大学,现任亚马逊云科技大中华区开发者关系总监兼首席开发者布道师,致力于新一代信息技术与翻新在开发者中的布道推广,以及开发者生态体系的建设。他此前负责亚马逊云科技高级产品经理多年,负责云原生、大数据和机器学习等相干产品的业务和市场拓展。在退出亚马逊云科技之前,他曾在多家跨国企业负责产品、技术和治理等岗位,具备近20年的IT行业教训与实际。 ...

April 22, 2022 · 1 min · jiezi

关于工程师:职业精进的最佳方式是跳槽技术栈到底重不重要10-年经验工程师酒后吐真言

当你成为行业资深人士时,你违心给后辈提供一些教训吗?最近,一位有着 10 年教训的资深工程师在醉酒后洋洋洒洒写了三千多字,波及技术、近程工作、职业倒退、工作与生存等。正所谓「酒后吐真言」,咱们来看 ta 说了些什么吧。 我推动职业生涯的最好形式是换公司。技术栈并不重要,因为在我所在的畛域中有大概 15 种根本的软件工程模式能够利用。我从事数据工作,这与 webdev 或嵌入式开发不同,但所有畛域都有大概 10-20 个外围准则,技术栈只是试图让事件更容易而已,所以不要为此懊恼。人们举荐换工作是有起因的。如果我对一份工作不称心,可能是时候 move on 了。我在之前待过的公司里结交了一些终生的好敌人,但我对公司并没有这样的要求。我在没有和共事建设友情的中央工作有过十分开心的经验,在交到好敌人的公司也有过不开心的经验。我学会了对我的经理诚恳。不是齐全诚恳,但在工作中尽量做到实在。能产生什么更蹩脚的状况呢?被辞退?没关系,我能在两周内找到一份新工作。如果每个季度中,我在凌晨 2 点被紧急喊醒的次数超过一次,那么这意味着出大问题了。我要么解决它,要么退出。优良经理的品质与优良工程师有许多共通之处。最开始的时候,我迷恋技术、编程和计算机科学。而当初,我受够了。好的代码是高级工程师也能了解的代码;优良的代码,连 CS 大一新生都能看懂;而最好的代码是齐全没有代码。工程师最被低估的技能是如何写文档。有人求教我怎么写好文档,讲真,如果真的有好的举荐,我会领取课程费用(哪怕须要花很多钱,只有保障我能写好文件)。和上一条相似,写好批改提案是一大技能。简直所有的 battle(vim vs emacs、mac vs linux 等)都无关紧要,除了……年龄越大,我越观赏动静语言。如果我发现自己是房间里最聪慧的人,那么是时候来到了。我不晓得为什么 Web 全栈开发者的工资这么低,他们应该失去 50 万根本年薪。全栈开发者必须理解前端和后端、不同的浏览器如何工作、网络和数据库、缓存、web 和挪动端的差别,甚至公司想应用的另一个框架…… 所以为什么 web 开发者的工资这么低?咱们应该雇佣更多的实习生,他们很棒。那些精力充沛的小家伙有很多奇思妙想,如果他们可能质疑或提出批评就更好了。我喜爱实习生。不要去见你的偶像。我花了 5000 美元加入我的一位偶像的课程。他很聪慧夺目,但最终我意识到他是在编故事,他和咱们其他人一样。技术栈很重要。我方才说技术栈不重要,但实际上当你听到 Python dev vs C++ dev 时,你想的货色必定不一样。那是因为某些工具的确很善于执行某些工作。如果不确定本人想做什么,就写 Java。这种编程语言简直什么都善于。有史以来最平凡的编程语言是 lisp,我应该学 lisp。对于初学者来说,最赚钱的编程语言是 SQL。即便只懂 SQL,别的什么都不懂,你也能够赚到钱。薪酬专员?薪资大略 5 万吧。懂 SQL 的薪酬专员?9 万!大公司有组织能力的普通人?4 万美元。有组织能力又会 SQL 的人?请称说本人为 PM,薪资 15 万美元。Tests are important but TDD is a damn cult.测试很重要,但 TDD(测试驱动开发)是该死的邪教。轻松的政府工作并不像人们所说的那样,至多对职业生涯晚期到中期的工程师来说是这样。当然,12 万美元薪资还有养老金听起来不错,但你将出卖本人的灵魂去钻研秘密的专有技术。我很尊重政府工作人员,但说真的,这些中央工程师的平均年龄 50 岁以上是有起因的。此倡议不适用于政府承包商。第三方招聘者是水蛭一样的存在。但如果遇到了好的第三方,就认真打好关系,他们能够帮忙你的事业倒退。期权要么不值钱,要么能让你成为百万富翁。除非工程人员超过 100 人,否则期权可能毫无价值。在家工作就是最好的,然而短少白板很蹩脚。我素来没有在 FAANG 这几家大公司工作过,所以我无从得悉本人错过了什么。然而我雇佣过从 FAANG 进去的工程师,他们也不晓得本人在做什么。我的自我价值与总薪酬无关,资本不是确定自我价值的好办法。经理的势力比你设想的少。如果你想晓得,为什么某某经理不辞退某人,那是因为他们不能。头衔大多不重要。你做了什么,实现了什么,这才是人们关怀的。善待每个人。不是因为他们能帮忙你的事业,而是因为凶恶自身就是有回报的。如果我在过来一个月中没有从高级工程师或实习生那里学到什么,那是因为我没有留神到而已。领取课程、书籍、会议费用是值得的。我加入过几次会议,加入过几次付费课程,读过很多书。很值得,我能够更好地伪装本人在做着什么。腕管和背部问题不是闹着玩的,当初快花钱买好配备。你晓得做软件工程师最大的益处是什么吗?能够和与你想法一样的人见面聊天。不肯定是对体育和电视节目有一样的趣味,而是他们对待问题的形式和你一样。那很酷。科技领域的女性不够多。如许蹩脚的行业,这须要扭转。我始终试图给咱们组织中的女性工程师更多激励和帮忙,但我不晓得本人还能做什么。黑人工程师也一样。我从未真正厌恶一种语言或技术,直到我开始相熟它。此外,即便我厌恶一项技术,但只有我认为它是好的,我仍会向客户举荐它。git 很蹩脚,但我别无选择只能应用它,还有 GUI git 工具。因为我从事数据工作,我将给出一个数据相干的经验教训——该死的 pandas。我的工作更容易,因为团队中有半技术分析师。半技术性,示意他们懂编程但不懂软件工程。这是一件幸事,因为如果有些货色对他们来说没有意义,那就意味着它可能设计得不好。我喜爱团队中的分析师,他们比最卓越的工程师对我的帮忙更大。暗黑模式十分好,除非你不得不应用 light 模式(如不反对暗黑模式的网页或 app)。我对平安足够理解,而后发现我对平安无所不知。成为一名不错的工程师意味着理解最佳实际,而作为一名高级工程师意味着晓得何时突破最佳实际。如果人们试图将责任归咎于一个 bug 或中断,那么是时候 move on 了。很多后退中的公司,尤其是守业公司,都在议论带上「真实自我」。但如果实在的本人只想看色情片呢?衰弱的做法是在工作和集体生存之间建立一个屏障。平凡领导力的最好证实是,当我的领导因为我的谬误而受挫,我会为她出生入死。同样,我有幸共事过的最佳领导者尽最大致力提倡我的观点,并跟我解释与我的观点相冲突的其余观点。我正在致力成为他们那样的人。去他妈的副业。如果你喜爱做,太好了!即便我有工夫做兼职,我也会忙着在 reddit 网站写醉醺醺的帖子。在某种程度上,算法和数据结构很重要。我没看到药剂师面试考有机化学,咱们行业的面试过程有问题。做本人喜爱的事不重要,做本人不厌恶的事更重要。我离产品越近,我就越靠近进步收益,此时无论我的工作技术性有多强,我都感觉本人更受器重。即便在成长性最强的公司中也是如此。Linux 很重要。我学会了对「大数据」这类不置可否的流行语保持警惕。什么是「大」数据?我在 Spark 和 Kafka 中解决过每 10 分钟 10000 行的数据流,在 Python 和 MySQL 中进行过每小时 10 亿行的批处理。那些标签可去他妈的吧。不是所有的好工作都在硅谷,但很多都是。对于编程语言我已经很厌恶一种编程语言 (C#),直到开始应用。当初我依然厌恶它,但认为它还是有用的。我开始厌恶一种编程语言 (C#),之后来到又回来了。哇,那种编程语言真的提高了。函数式语言最平凡之处在于函数是最重要的,所有程序员都晓得这一点。一门语言再平凡再优越,人们不应用也没方法。学习一门语言并不难,难的是学习生态系统。对于共事结对编程很棒,只是要花很多工夫,而公司通常不想花这些工夫。与聪慧的工程师一起工作让我成为了更好的程序员,与聪慧的非技术共事一起工作让我成为了更好的工程师。不要在朝九晚五工作工夫之外工作。除非你有一个很棒的我的项目,且你处于最佳状态。那就太棒了。对于在家工作如果公司一半员工近程,一半坐班,那么公司须要确定近程人员是否被视为二等公民。如果重大决策是在「饮水机旁」做出的,那么最好致力扭转公司文化,或者跳槽到另一家将近程员工视为头等公民的公司。在家工作的第二大毛病是没有白板。在家工作的最次要毛病是很难向共事学习。除非我自信、果决地提出问题,并且公司文化认可近程员工的价值等同于现场员工,否则我认为最好在职业生涯的前 5 年坐班。对于技术每个人都晓得技术始终在变动。过来 10 年中,技术格局产生了巨大变化。然而基本面变动不大,尤其是实用于我这个畛域的基本面。-Hacker news 和 - /r/programming 只对获取个别想法和跟进最新新闻有用,评论简直一文不值。很多业余爱好者对技术有很强的见解,甚至在「体面的」杂志和博客上发表文章。我须要分辨它们的价值。对于数据工程我是一名数据工程师,所以我能够给出更具体的、有针对性的倡议 / 教训。SQL 才是王道。像 MySQL、Postgres、Oracle、SQL Server、SQLite 这样的数据库仍然很棒。即便你应用新技术工作,大部分技术还是会迁徙。大多数公司不做流媒体,这很难也很简单。如果你工作 10 年,还不晓得如何解决每秒 10k 记录,别放心,你依然能找到适宜的工作。Airflow 就是垃圾。机器学习我的项目极易失败,它们既简单又难以实现。咱们的畛域是新的。数据工程没有好书,去「做」就好。对于生存人们都会死去。你心愿你的代码成为遗产吗?如果是的话,那就花很多工夫在这下面,因为那是你的遗产!然而如果你像我一样,不心愿代码成为遗产,那么不要太在意。坏蛋也写烂代码,聪明人也写烂代码,好的程序员和工程师也写烂代码。不要让代码品质成为你本身价值的因变量。我喜爱技术和编程,因为技术是我的喜好。当初我的喜好就是工作,而工作毁了我的喜好。当初如果我想享受技术,就须要放弃喜好。或者我须要确定技术不再是我的喜好,并找到新的喜好。其余多年来,我构建了供多个团队和人员应用的大型平台和库。然而出于某种原因,我最引以为豪的代码是我应用的小脚本。我找工作时,创立了 Linkedin 主页。但收到了乌七八糟的回复,就删了。当初我用 Linkedin 寻找其余候选人退出我的公司。一句话,Linkedin 就是一大堆乐音。我感觉它有价值的起因只是,当初我的局部工作就是制作乐音。我变成了本人厌恶的人:在职业生涯中从事技术工作,但在现实生活中回避技术。兴许这是因为年纪大了。/r/ExperiencedDevs 是一个十分酷的社区。参考链接:https://old.reddit.com/r/Expe... ...

May 31, 2021 · 1 min · jiezi