定义 什么是前端开发者 以及 他们做什么 本身就很难。 那么,我们如何设定衡量一位优秀前端开发者的标准呢?
以下是一些人对该主题的看法。
我认为前端开发者需要掌握四种不同的技能。
- 同理心
- 代码
- 设计
- 沟通
Zell Liew
前端开发者在学习了 HTML、CSS 和 JS 之后,在创建用户体验或确保这两个学科从开发角度来看作为一个整体工作时,被迫考虑功能性。 他们成为全能型人才,必须了解 AJAX 数据和发送邮件或返回错误的 PHP 文件之间究竟发生了什么。
Daine Mawer
在我看来,优秀的前端开发者的定义是:精通 HTML、CSS、JS,并对用户设计思维有深刻的理解,因为他们将构建具有可访问性的 Web 界面。 他们也应该乐于学习,因为前端开发的世界在不断发展。 能够紧跟潮流至关重要。
Egwuenu Gift
在我开始对自己的职责感到更舒适之后……我很快发现了下一个挑战:帮助建立设计和开发团队之间更紧密的联系。 尽管我们定期合作以产出高质量的作品,但这些团队并不总是使用相同的语言。
Ronald Méndez
我认为前端开发者需要对他们及其团队正在创建的软件架构有一个整体的了解。 他们不能把自己局限于前端,还需要了解后端的复杂性,以便为客户创造最佳的用户体验。 最终,这关乎持续学习和团队沟通,以及倾听客户的意见,以创造出色的体验。
Jen Looper
我在 Web 上工作的时间越长,就越意识到,优秀的人才和真正优秀的人才之间的区别不在于他们知道什么,而在于他们的思维方式。 显然,知识很重要——在某些情况下至关重要——但在一个变化如此迅速的领域,你获取知识的方式始终比你在任何特定时间所掌握的知识更重要(至少从长远来看)。 也许最重要的是:如何利用这些知识来解决日常问题。
Philip Walton
对 HTML、CSS 和 JS 有基本的了解当然是不言而喻的,但这只是等式的一部分。 我认为,优秀的前端开发者能够将用户体验和业务目标联系起来,同时弥合任何可能阻碍整体用户流程的差距。 这需要良好的沟通能力、创造性解决问题的能力、同理心,以及也许最重要的是,愿意倾听和接受批评。
Geoff Graham
在某种程度上,这是一个很难回答的问题,因为前端开发的本质在不断扩展。 我们作为前端构建的事物类型变得越来越复杂和多样化。
因此,我认为优秀的前端开发者能够理解他们当前正在进行的项目的范围、需求和技术限制。 这可能意味着:他们的团队对他们的期望、他们的用户需要什么,以及由于事物在不断变化——好奇心!
Sarah Drasner
我欣赏优秀的前端开发者如何回答问题。 如果他们对某种特定方法是唯一正确的方法过于教条,那么我就会开始担心。 以 SVG 插图为例。 或者图像优化。 或者如何标记导航。 处理这些事情有很多不同的方法,没有一个是完美的。 关于这一点,Chris 之前写过 一篇关于教条主义的精彩文章,我一直在思考它。 这正是优秀的前端开发者的标志:能够接受自己并非总是拥有完美答案的人。
Robin Rendle
一位优秀的前端开发者是灵活的、渴望学习的、渴望分享的,并且对瞬息万变的环境采取务实的态度。
哦,对了,还有层叠样式表之类的东西。
Andy Bell
你怎么看?
这是一个开放式的讨论。 没有正确答案,也没有错误答案。 你会如何评价一位“优秀”的前端开发者?
优秀的前端开发者知道何时应该改变某些东西,也知道何时应该保持现状。
这是一个很难回答的问题,因为该领域和范围在不断发展。 曾经,HTML、CSS 和 JS 就足够了。 然后出现了 jQuery。 现在我们有了 Angular、React 和 Vue 等下一代 JS 库。
如今,优秀的前端开发者还需要拥抱所有这些新的技术栈,并了解预处理器、模块和打包的工作原理,并将它们用作必要的工具。 了解(Web)服务器、微服务及其 API、数据库、容器等工作原理也有助于成为一名优秀的前端开发者。
除此之外,还有 SEO、速度优化、缓存。 如果你知道如何在后端导航,甚至编写一些代码,那么你将拥有很多机会。
优秀的前端开发者会拥抱所有这些东西。 所以,它不再仅仅是设置元素和文本的样式,以及操作 DOM。 他/她需要掌控 DOM。
在我个人看来,优秀的前端开发者是:对他们来说,性能、可维护性、调试、SEO 和(尤其是)可访问性不是事后才考虑的,而是其工作流程中不可或缺的一部分。
优秀的 前端开发人员可以创造出极具吸引力的气泡对话框。
我只能说:前端开发人员可能都是非常有天赋的转盘高手。
或者他们在前世是章鱼。
我认为优秀的 前端开发人员必须能够根据最佳设计和用户需求,在不同的设备、浏览器、可用性和SEO环境下创建环境,并使用简洁明了的代码。
优秀的 前端开发人员了解所有事物的“原因”。
从一般意义上讲,优秀的开发人员是与他人协作的人。他们知道如何让整个团队为他们共同创建的项目感到自豪。优秀的开发人员拥有良好的内省能力,知道并接受他们可能出错。本质上,优秀的开发人员会做对产品最有利的事情,并且不会过多地掺杂个人骄傲。
当然,这可能非常困难。我必须承认,我并不总是最好的开发人员。
无障碍性可能是优秀前端开发人员最重要但常常被忽视的方面之一。如果你不知道如何进行无障碍性的基本操作,那就意味着你并不关心无障碍性;如果你不关心无障碍性,那就意味着你并不关心你的用户。
我认为优秀的 前端开发人员关心使用他们编写的代码的人。包括他们正在构建的网站或应用程序的用户,以及必须支持和维护其代码的其他开发人员。如果你构建的是糟糕的体验,或者你的代码难以维护,那么即使你精通各种技术也毫无意义。
优秀的 前端开发人员能够跳出屏幕,看到并理解周围需要解决的更广泛的问题。并非所有问题都可以或应该通过重写函数、使用更新的框架或不同的语言来解决。有时,最佳解决方案完全是低技术的,可以通过让一群人彼此交流来找到。
优秀的 前端开发人员能够与与他们不同的人以及与他们相似的人一样有效地合作,并且不会将自己或任何人局限于某个特定的思维模式。
优秀的 前端开发人员始终在学习,但在学习的过程中保持自己的节奏并保持健康的平衡。
我认为,最终,是什么造就了优秀的前端开发人员,也是什么造就了优秀的软件开发人员。
不断学习和交流
这意味着分享你的知识,但也意味着询问你不知道的事情。没有人能完全掌握所有技术,这没关系(我希望如此),但你需要了解客户的需求并提供满足这些需求的产品。
…并且不要在 CSS 中使用
!important
:D前端开发人员会全面审视他们及其团队创建的软件架构。
我认为我们需要摒弃“前端开发人员”这个术语。PHP/ASP 开发人员正在逐渐消失。这些人正在转向移动开发或 JS。在我看来,我们应该将老式的“前端”拆分为 UX 工程师和 Javascript 工程师。他们的思维方式是不同的。大多数人既不擅长 JS 也不擅长 CSS。通常是二者选其一。让 UX 工程师与 UX/设计团队紧密合作,创建出色的交互、原型、交互事件等,并让 JS 工程师处理所有数据部分。仅供参考。我厌倦了精通 CSS,却不得不被迫学习 JS。我不是程序员!