热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

前端程序员:月薪5K到5万,我干了啥

如何在前端开发这种高精尖的技术领域找到心仪的工作?实现在咖啡馆喝喝咖啡敲敲代码就能升职加薪、买房买车、迎娶白富美走上人生巅峰的职业梦想

高贵的前端程序猿们:


如何在前端开发这种高精尖的技术领域找到心仪的工作?实现在咖啡馆喝喝咖啡敲敲代码就能升职加薪、买房买车、迎娶白富美走上人生巅峰的职业梦想?这篇《进化论:从 0 到 100,前端猿茁壮成长的精神饲料史》,肯定能给你事业的加速动力。


前端开发工作已经变的越来越复杂,仅仅是想罗列一份前端开发的学习列表就已经是一件艰巨的工作。曾经只要会编写 HTML, CSS 和 Javascript 就是能够找到一份前端开发工作的全部要求。而现在,web 开发远远不止是简单编码。因为我们的互联网上有了更多的内容,也因为有更多的人、更多设备可以访问互联网, web 前端开发技能也就更多了。我们现在需要考虑的问题很多,比如载入时间,性能,不同的屏幕尺寸, 不同的输入方式, build 系统, 部署策略,还有如何组织好我们的代码。


这还是想象中前端开发么?好吧其实只要你有热情,这些还是很有趣的,现在就来仔细看看,一份前端开发的工作,到底需要你准备些什么?


◆ ◆ 

入行行头:5大硬件


请准备好以下东西


1、一颗人类的大脑:智商在平均水平线以上即可


2、一份强烈的渴望:我的代码要可以运行在任何一个有浏览器的设备上。


3、一台笔记本电脑:不需要花费很多钱得那种,只要它可以运行 Windows, Mac OS X, 或 Linux 系统。当然你也可以只用一台台式机,但是那样就不能带着它坐在咖啡馆里...


4、一个文本编辑器:可以推荐的比如 Atom,Visual Studio Code, TextMate, 它们都有在 Mac OS, Windows 的免费版本,什么还有 Sublime, WebStorm? 啊,那些都很流行,不过需要需要一笔不少于 70 美元的花费...


5、一个翻墙代理:这个大家都懂的,我就不解释了


◆ ◆ 

初级资质要求


一些专业基础


你需要学会浏览器能理解的三大语言:HTML, CSS, Javascript - 神圣的三位一体!

非常重要的一点是,一定要理解这三大语言后再去学习别的,确保知道怎样在各种尺寸的屏幕上排列好你的网页,怎样在一个按钮被按下后 do something!


一些很有用的学习资源


  • Codeacademy: interactive, code-along tutorials (this site is the bomb btw)

  • Web Development for Beginners: article from webplatform.org.

  • MDN:https://developer.mozilla.org/en-US/docs/Web


◆ ◆ 

中级进阶路径


一旦掌握了三大语言,就可以开始学习专业的开发流程啦:


Command line:好吧,命令行也许都会,但是要掌握最基本的操作,熟悉怎样配置你的环境,还有那些奇怪的 shell 脚本,因为你会经常用到它们。


1、CSS 已经不够用了,我们有了 CSS 的预处理:Sass, LESS。


2、知道如何搭建一个 build 系统:Gulp 或 Grunt 这类的构建任务脚本器,编译 LESS 成 CSS, concatenating Javascript, minify 压缩静态资源, 选一个异步或同步的方式加载它们,然后一个好的 build 系统要能自动做到那些,包括一个本地的 web 服务器用于测试代码。


3、代码版本管理,git。


4、在 github 上分享你的代码!


5、部署! 让你的网站上线。可以找一个免费的服务提供商,比如 heroku.com, https://pages.github.com


这些几乎就是现代前端开发者会用到的工具和技术,好了,你现在可以成为一个前端开发工程师了。


◆ ◆ 

高级炸裂装备


你已经能够为你的朋友的业务搭建一个网站了,简洁的排版,高清大照片,你成功了,它甚至在你的手机都看着很棒。那么还有什么值得学的?


把你的网站和一个内容管理系统 (CMS)集成在一起。一个 CMS 能够让你通过用户界面增、删、改、组织你的内容,不需要任何代码。这就是那些博客网站如何工作的。比如免费的 WordPress,去熟悉一个开源的 CMS 吧,会很有用的。


学习怎样搭建一个 CMS,意味着你讲要熟悉一个服务器端的语言,比如 Node.js, 或 PHP,然后你还会想要知道怎样和数据库打交道,比如 MySql 或者 MongoDB。


来熟悉一种 Javascript 框架吧,这样你可以真正的搭建一个交互出色的 web 应用,那真的很重要,比如 Angular, React, Ember。只要挑一个你喜欢的,但是一定要精通它。


Javascript design patterns,Javascript 也有设计模式? 是的,读一下吧。


◆ ◆ 

突破天际的大招


沟通技巧!你需要和你的小伙伴们沟通,他们是你的 coder 伙伴,你的老板,你的用户,你的....stackoverflow.com, 有问题找 stackoverflow,扩展一下人脉把,上 meetup.com, 在博客上写一些你的学习体验, 在 Gitgub 贡献一下你的 Pull request。


界面设计和用户体验设计 UI/UX design,前段开发的小伙伴需要具备基本的 UI/UX 设计知识。


搜索优化,要知道怎样提高网站的搜索排名,更容易被人们搜索到。


CSS 过度效果,给你的按钮写一个 hover 的 CSS 动画,还有你的从右边滑入的导航菜单也需要一个平滑的动画。


关于性能,让你的网站尽可能快的被加载,减少 DOM 的 reflow 和 repaint 操作,防止滚动性能瓶颈,优化 Javascript, 翻墙读一读这个吧 google web developer fundamentals。


用一些测试框架来实现 Javascript 单元测试,比如 Jasmine,QUnit。


持续集成 Continuous integration (CI),知道怎样配置一套和伙伴们一起使用的自动测试和部署的工具,比如 CircleCI, Travis CI, Jenkins。


◆ ◆ 

超好用的其他加成技能


↓↓↓这些并非必须,但能帮你脱颖而出:


用 CSS3, SVG, Canvas API 实现动画。


后端开发, Node.js


◆ ◆ 

最后:去找工作吧!


有了技能是不够的,你需要能展示它们,你还能干的是:


1、搭建一个小网站,公开你的 gitub 代码库,确保你的代码和文档清楚漂亮,还有一份 README


2、去 meetup.com 找你的老板或者投资人吧,开一个博客,申请一个 linkedin 帐号


3、因为 web 技术总是在变化,最后,即使找到了一份称心的工作,还是需要 stay motivated, 你需要时常去下面这些地方转转:CSS Tricks,SitePoint,Smashing Magazine


4、当然还有些像 CSDN 这样中文社区,总之遇到任何难题,社区里有总有乐于助人的。


5、保持好的职业态度:Stay humble, and build cool shit


推荐阅读
  • Jenkins教程:使用Jenkins进行持续集成
    【注】本文译自:https:www.edureka.coblogjenkins-tutorial本文将重点介绍Jenkins架构和Jenkins构建管道,并向您展示如何在Jenki ... [详细]
  • linux和jenkins的连接
    1.在浏览器中打开我们的jenkins页面。(http:ip:端口号jenkins)2.然后登陆管理员用户。3.配置节点信息1).点击【jenkins管理】【节点管理】【新建节 ... [详细]
  • Jenkins里创建job项目(linux)
    常见自由模式项目在Jenkins里点击,打开后输入项目名称、选择“Freestyleproject”并确定。     源码管理:在项目列表面板点击刚才创建的空项目,打开后点击源 ... [详细]
  • Jenkins的分布式构建,在Jenkins的配置中叫做节点,分布式构建能够让同一套代码或项目在不同的环境(如:Windows和Linux系统)中编译、部署等。将jenkins项目 ... [详细]
  • ps:本文转载于:https:www.ibm.comdeveloperworkscnjavaj-lo-git-mangeindex.htmlGit是目前最流行的源代码管理工具。大量 ... [详细]
  • idea激活服务器 3月最新注册码
    idea激活服务器3月最新注册码,https:www.yht7.comidea。详细ieda激活码不妨到云海天教程 ... [详细]
  • 一、介绍:在测试和开发中,有一款API测试工具一直占据着武林盟主的地位,那就是声名远播的Google公司的Postman。Postman原先是Chrome浏览器的一个插件,后面发展 ... [详细]
  • mac goland激活码[最新免费获取]
    (mac goland激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源Inte ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
author-avatar
手机用户2502869561
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有