做者:Emma Wedekind翻译:疯狂的技术宅前端
原文:https://dev.to/emmawedekind/1...程序员
未经容许严禁转载面试
成为优秀程序员的秘诀之一就是学习如何搜索问题的答案。经过有效地学习 Google 到的东西,你将节省大量的时间。算法
让你的团队知道本身完成一项任务将花费多长的时间,并以两种方式交付。经过可预知的和可靠的交付,你将创建起信任。编程
设计师为用户的痛点提供解决方案。为了创建有效的产品,要向他们学习,并团结他们。segmentfault
找一个你能够向他学习的人并从中汲取灵感。若是你须要技术导师,Coding Coach是一个很好的入门之地!后端
成为一个可以分享想法,并使别人能够从中汲取经验的人。设计模式
写评论时要解释“why”,而不只仅是“what”。浏览器
函数和变量应该准确地表示它们的用途,所以 myCoolFunction
这样的命名并不能让你上天。安全
每一个人都须要时间去放松。快开始你一直想要的那次旅行吧。你的大脑和同事们都会感谢你。
没有理由累积更多的技术债。
阅读代码是一种被低估的技能,但倒是一种很是宝贵的技能。
通过漫长的工做日,你须要时间进行放松。关闭工做通知,从手机中删除无聊的应用。
能够经过电子邮件或微信解决吗?若是是的话,请避免开会。若是不是,请注意持续时间。瞄准更少。
结对编程容许你扮演教师和学生的角色。
经过简洁明了的电子邮件来捕捉受众群体。没有人想去读你冗长的电子邮件。
与志同道合的人在一块儿会激励你走出低谷。
清理你的版本控制分支,就像在你的朋友来访以前清理你的房子同样。若是你不须要它就丢弃,不要把它扔进抽屉里。
包容。不要告诉别人他们不够好,不能进入这个行业。每一个人都有本身价值。
你选择了一门须要不断学习的专业。学会爱它。
这并不容易。但咱们都是在同一个起点开始的。你能行。
若是它不吓到你,就不会帮助你成长。
在深刻研究代码以前,应该先了解验收标准。它将为你节省时间和精力。
拥有一套内部和外部都知道的工具。了解这些工具能够用于的目的,以及什么状况下项目能够从中获益。
向受信任的同事和朋友提出建设性的批评。它将帮助你成长为优秀的程序员。
技术老是在发生变化,并且变化得很快。不要反对新技术,学习它,而后造成本身的见解。
经过关注出版物、博客、播客和科技新闻,及时了解最新的科技新闻。
强大的解决问题能力能够解决任何问题。把握解决问题所需的一切。
不管你的头衔头衔是什么,或者在什么优秀的公司工做,都要保持谦虚。
了解如何吸引观众并进行有效的演示。
不要直接跳到第一个可能的解决方案。在深刻研究代码以前检查全部路径。
科技行业内有许多部门。找到你最感兴趣的领域并成为专家。
尝试创建一致且健康的习惯,例如消除分心、时间盒子任务、出席会议、以及有限从最重要的任务开始。这可能须要一些时间来适应,但从长远来看它是值得的。
掌握浏览器的调试器工具。了解 IDE 的调试细节。经过学习调试问题和跟踪错误的最有效方法,你将可以解决最困搞的错误。
若是你如今掌握一项技能就应该去运用它。除非有意识地进行改进,不然技能会随着时间的推移而逐渐消失,并且这个行业发展很是迅速,持续练习也很重要。要摆脱“我一直都是这样作”的心态,并进入“有更好的方法来作到这一点吗?”的思惟方式。
若是你如今有一大包甜甜圈,这并不意味着你天天均可以吃一个🍩并长期保持这种状态。
有时你必须表达本身的意见,所以了解其背后的原理很是重要。为何解决方案 A 比解决方案 B 更好?提供有效的论据,你的意见将更加健全。
你是一种商品,应该获得适当的报酬。请注意你所在城市的行业平均值。若是你赚的钱少了,就该和本身的经理聊聊了。拿到你应得的。
若是你遇到问题而且花费了太多时间寻找解决方案,那么这时候就寻求帮助了。咱们都是人,都须要帮助。向同事寻求支持并不可耻。
人们以不一样的方式进行学习。有些人经过视频教程学习效果最好,有些人则经过阅读书籍。弄清楚你的学习风格并努力练习。
有时你会被要求提供关于某些同事的反馈,请保持友善。你能够表达本身对黛博拉(演员)缺少主动性的见解,而不是去把她撕成碎片。
连续进行 8 个小时的编码几乎是不可能的。你会很快倦怠并犯下不少错误。因此设置一个计时器,提醒本身停下来休息一下。出去走走。和同事一块儿喝杯咖啡。离开屏幕将会对你的工做效率和工做质量产生积极的影响。
学习编码须要时间,当你看不到进展时会很是沮丧。因此跟踪你的成就和实现目标的进展很是重要。在计算机旁放一个小清单,每次实现某些功能时,请将其写下来,不管多小。积少成多,集腋成裘。
搞懂语言的细微差异比死抠框架或库的细节更好。你不必定须要逐个学习这些框架或库,但理解它们的工做方式将有助于你编写更清晰、更高效的代码。
让别人阅读并分析你的代码可能会使人恐惧,但也可以为你提供宝贵的反馈,这将使你成为更好的程序员。你还应该努力进行良好的代码审查。
了解外围领域相关的一些基础知识,例如设计、营销、前端或后端开发。它将帮助你成为一个更全面的程序员。
每一个项目都有不一样的需求,所以咱们必须选择合适的工具。虽然选择之前用过的技术很舒服,但若是它们不适合项目的须要,就应该探索替代方案。
全部人都会犯错误,在整个职业生涯中你会遇到不少错误。因此当你犯错误时,承担责任是很重要的。它帮你与团队成员和管理层创建信任。
在进行 pull 请求以前,请审视你本身的代码。若是这是同事的工做,你会发表什么评论?在请求代码审查以前首先尝试诊断问题或错误是很是重要的。
失败就是没有达到预期的结果,这并不必定是坏事。在咱们的职业生涯中有过不少失败。了解你失败的缘由,下次是否能够换一个方法?
了解本身。你的弱点是什么?也许你老是忘记在提交以前更新测试;或许你回复的电子邮件真的很糟糕。了解你的弱点,以便本身能够积极地解决这些问题。
这个行业在不断发展,因此好奇心很重要。若是你不了解某些内容,不管是项目要求仍是某一行代码,请说出来。没有人会嘲笑或批评你,你会建立更好的代码。
世界上有无限的知识库,根本没法征服它。选择几个主题来掌握就好了。你能够得到有关其余领域的工做或与本身相关的知识,但没法掌握全部的内容。
写了一些代码并不意味着你须要对它附加情感。没有人喜欢本身的工做被抛弃,可是代码总有一个生命周期,因此没有必要对它有所捍卫。
优秀的团队拥有彼此的支持。这创造了一个安全的空间来尝试新事物,而没必要为成见担忧。
找一些你钦佩的行业人士。它将激励你完成本身的项目或尝试新事物。
不管你拥有多少经验或你的职位是什么,你的工做都具备价值。给它应有的价值。
关闭微信通知、短信、电子邮件和社交媒体,这将有助于你集中精力并最大化你的工做效率。某人不会由于你须要 30 分钟后再回复他的消息而崩溃。
试着并支持你的团队成员,不管是参加剧要演示仍是他们遇到困难,去帮助他们吧。
若是有人作得很好,请告诉他们。赞同与并帮助是与团队成员创建信任的好方法。这样他们也更有可能会帮助你。
测试很重要。用单元测试、回归测试、集成测试、端到端测试去测试你的代码,你的产品将更加稳定。
当你收到新需求或新的bug提示时,请先制定行动计划。你须要什么条件来解决这个问题或开发这个功能?即便只花上几分钟来制定计划,也能够帮你节省好几个小时。
伪编码是一项很是棒的技能,由于它容许你在不浪费时间编写代码的状况下思考复杂问题。在纸上写下一个方法,运行不一样的测试用例并查看陷阱的位置。
若是你在工做中获奖,请将其写下来。若是你开发了一个关键功能,请将其写下来。你积累的这些东西,能够帮你进步,或着在艰难的一天去鼓舞士气。
学习一些基本的排序和搜索算法和数据结构。这些是与语言无关的,能够帮助你解决跨语言的问题。
虽然测试最新的技术颇有趣,但选择那些在企业级应用中易于维护的技术。你的团队将会在将来几年内感谢你。
设计模式是构建代码的有力工具。你可能不须要在每一个项目都去使用它们,但对它们有基本的了解将有助于构建更大的应用。
为了可读性和简单性,不要经过编写复杂的代码来炫耀你的花哨的编程技巧。这将使你的团队成员更容易合做。
技术债可能会产生巨大的性能影响,因此若是能够的话就重构你的代码。
不是每月进行一次大规模升级,而是应该更频繁地小规模更新。这样能够大大的减小引入错误和破坏性变化的可能性。
尽快并常常提交是确保你工做整洁的最佳方式,而且还减小了恢复因意外引起的代码丢失的压力
你不只不该该惧怕寻求帮助,还应该学会何时去寻求帮助。在寻求帮助以前,你应该始终去尝试解决问题,并记录你尝试过的东西。可是当你被一个简单的问题困扰了一个多小时,成本就超过了收益,你应该去求助某一位同事。
在提问时,尽可能作到具体。
你的工做不须要为了得到反馈而完成。但若是你不肯定方向是否正确,请让可信赖的同事检查你方案的有效性。
文档是关于技术的最纯粹的真实来源,所以学习阅读文档能够帮助你快速成为专家。
没有什么能阻止你尝试解决问题。你有什么损失?
你的想法和意见颇有价值,参加会议将有助于你与团队和管理层创建良好的关系。
若是你有机会与贵公司的其余团队合做,那就去吧。
当你每周工做40个小时的时候,为激情项目花些时间是很重要的。它们能够帮助你从新激发对编程的热爱,并尝试在工做中没法用到的新技术。(译者吐槽:万恶的美帝没有996)
规划你职业生涯的理想轨迹很是重要。若是你不这样作,就是在无的放矢。
评论博客、参与Twitter主题、与社区互动。做为一个活跃的旁观者而不是小透明,你将学到不少东西。
学会肯定任务的优先级将有助于提升工做效率。即要保证完成即时的平常任务,也要使长期任务的待办事项列表保持活跃,并按重要程度排序。
细节能够在项目中产生重大影响。
你的队友因为他们的技能被雇用。使用并相信他们能够完成工做。
若是你是团队的领导,请学习如何有效地进行委派。它将为你节省时间并减小挫折感。由于单凭你本身是没法完成这一切的。
你惟一应该比较的是:昨天的本身。
学习编程将是一个漫长且艰苦的旅程。志同道合的人会鼓励你继续前进。
在一开始就搞大规模是一条走向失败的道路。在构建时要考虑可伸缩性,但在须要以前不要去进行扩展。这样就不会由于没必要要的臃肿而压倒团队,同时是你的团队保持了成长的能力。
若是你想使用一种很酷的新技术,应该权衡这样作的性能影响。你能够实现相似的东西而不会受到性能影响吗?若是是这样,你可能须要从新考虑本身的方法。
不要歧视新技术或新想法。对于学习新技能持开放的态度,也不要歧视别人,每一个人都值得尊重。
你永远也不会知足工做要求中全部的条目。因此只要有机会就去申请!就算失败了你能有什么损失吗?
你能够在一个很长文件中编写全部代码,但这很难维护。经过模块化,能够确保咱们的代码易于维护和测试。
若是你要从 Stack Overflow 复制并粘贴解决方案,应该彻底理解它的做用。搞懂你打算引入的代码。
若是你喜欢本身的工做空间和技术设置,那么你将更有动力去工做。去作你本身吧。
咱们都是从同一个起点开始的。随着你的技能和职业的发展,请不要忘记你的初心。
若是出现问题,请尽可能保持乐观。明天将会是新的一天。乐观将有助于你的团队充满活力并保证你的心理健康。
某些东西如今起做用并不意味着它总事会如此。从新评估你的工做流程并在必要时进行调整。
若是你有能力在家工做,请学会有效地工做。找一个单独的办公空间,没有分心。 Boneskull 写了一篇关于在家工做的好文章,你应该看看。
可访问性不是过后的工做,也不必定很是困难。每一个人都应该可以使用你的产品。
若是你告诉某人将在某个特定日期以前交付一些东西,那么就要履行这一承诺。若是你没法在截止日期以前完成,请尽早说出来。
若是你有一些额外的资源,能够用来帮助你的团队!他们会很感激你的。
一个很棒的我的做品集会让你不同凡响。用它来展现你的编程和设计技巧!
从事这个职业是由于它引发了你的兴趣。若是你感到沮丧和怨恨,请休息一下。给本身留出空间,从新点燃你对编程的热情。
若是你学到了很酷的东西,请分享它们!出席当地的聚会或会议。在午饭期间去教你的同事或你带的小弟。分享你的知识能够加强你对它们的理解。
就是这样!但愿你可以成为优秀的程序员!