时间过得好吗?我的职业生涯始于2012年,最初是C ++实习。 老实说,我不知道自己在做什么(实际上,什么都没有改变)。 但是,我学到了一些教训。
免责声明:此消息中将没有代码。
问题:编程中最重要的语言是什么?
这是英文。 或西班牙文,中文,波兰文。 您用来与同事交流的任何人。
与人交谈比与汽车交谈更为重要。
编程是一项团队运动。 很少有人会从头开始创建出色的产品(
CodeSandbox是一个很好的例子,尽管Ives最近雇用了几名员工),但是在大多数情况下,需要一个团队。
沟通技巧可以保存或掩埋项目。 不用担心,问题不仅是您的,甚至NASA也
因此而受苦 。
专业技能和沟通技巧对于项目的成功可能比纯粹的技术技能更为重要。 谁在乎您是否聘请了世界上最好的五位数据库专家,如果他们拒绝彼此交谈,您最终会遇到五个不同的MySQL,Aurora和MongoDB实例。
您需要深入了解自己的发展以及原因
有目标时,大多数人会变得更快乐。 这也适用于工作。
作为开发人员,您的目标不是将JIRA转换为JavaScript,也不将Trello转换为C#等。您的目标是
解决问题 。
如果您对要构建/维护的系统有深刻的了解,则可以在纯技术之外做出决策。 提出问题:此功能甚至有必要吗? 它解决什么问题? 我们可以不同地解决这个问题吗? 我们
要首先解决这个问题吗?
这种思维有时被称为业务环境,但是如果您想做好工作,则不仅需要了解环境,还需要能够塑造和影响环境。 要影响产品,就不必在组织中担任管理职务。 至少,这对于理解产品不是必需的。
如果代码审查很紧张,那么它的组织就非常可怕,非常错误。
天哪 代码验证。
我们真的没有考虑过,但是其他人
发表的带有研究成果
的作品在某种程度上是我们专业的。 难怪这会造成压力。
我个人看到有人专门在X不在办公室或Y出差时发送代码审查。 X是一位出色的程序员,但很难维持他的代码审查。 在初级合并请求下,数百个挑剔的评论根本不能证明您是开发人员的优势。 这只证明了你的坏本性。
可以,但是当此功能完全中断时我该怎么办?
起来 与此人联系,当面交谈。 与他交谈,找出他为什么以这种方式实现代码。
大多数人不想编写错误的代码。 如果这样做,他们可能正在处理您不了解的约束。 他们可能还不太擅长编程(现在),在这里您可以证明自己是一名导师。
一定有问题,请做好准备
根据维基百科:
墨菲定律是一句谚语或谚语,通常写着:“凡是会出错的事物都会出错。”
这是
太真实的事情之一。 设计系统时,请始终假设某种故障。
如果要创建登录表单,请假设人们会将整本书的文本复制并粘贴到密码字段中。
如果创建“所见即所得”窗口,则假定有人试图破坏它,并且很可能能够做到。
如果您有数据库,它将在某个时候断开连接。 如果您尚未测试从备份还原数据库,则这不是备份。
如果要在观众面前准备演示,请确保演示可以在线,离线,上下颠倒和在水下进行。
不要害怕说“我不知道”
最后 ,徽章上最有“高级”称号的特权是:
我不知道,我从未尝试过。 我会回来看你。
作为一名大三学生,我非常害怕:突然有人会猜到我是冒名顶替者。 作为开发人员几年后-如果我还没有看到任何东西,也许它还没有浮出水面。 或刚刚出现的另一项很酷的技术需要探索。 终身学习不是流行语,而是IT中的现实。
或者我只是一个令人难以置信的骗子,他欺骗了所有人我确实可以胜任的工作。 你永远不知道
公开学习
一旦您从“我不知道”切换到“嗯,那很有趣”,请与他人分享。 写博客,录制视频,在知识共享活动上交谈,或者只是...告诉某人。 如果您认为每个人都显而易见,那么事实并非如此。 即使是最优秀的专业人士,也需要向初学者学习,反之亦然。
教学是一种非常有效的方法,可确保您真正了解所涉及的主题。
正如一个该死的聪明人所说:
当一个教,两个学习。
作为开发人员,
您学到了什么?