Fury Road:计费开发人员的旅程

计费开发公司的经理有两种组建团队的方法。 一是招募现成的“前辈”,不断创造这样的工作条件,让他们最大限度地发挥自己的技能和经验,得到发展,同时不打架。 二是组建一支由新人、中人、高手组成的团队,让他们在公司内部沟通、影响、学习、成长。 我反对“无经验-无工作-无经验”的恶性循环,并且我认为雇用初学者开发人员没有问题。 前进电讯长期以来一直有实习计划,该计划已成为许多现任员工的职业跳板。

下面我就给大家讲讲我是如何看待计费开发人员的发展之路,以及需要按什么顺序掌握专业技能的。

1.学习一门编程语言

首先,任何人。 优先考虑 Java、Python 和 JavaScript,但 Ruby、Go、C、C++ 适合学习基础知识。 怎么教? 参加付费和免费课程;我可以推荐 Golang 的培训。 如果你的英语水平允许,看外国视频是一项很好的附加技能。

Fury Road:计费开发人员的旅程

2.了解操作系统概念

操作系统基于您需要了解并能够解释操作原理的七个组件:

  • 流程管理;
  • 线程和多线程代码;
  • Socket(软件接口);
  • I/O调度;
  • 虚拟化;
  • 贮存;
  • 文件系统。

我建议参加基础 Linux 管理课程。 第二个操作系统是 Windows 和 Unix。

3. 习惯终端

与对空白纸的恐惧症类比,对带有闪烁光标的空白黑屏的恐惧症。 您必须克服它才能学习如何在命令行上编写好的命令。
必须知道:

  • Bash 和 KornShell shell;
  • 命令 find、grep、awk、sed、lsof;
  • 网络命令 nslookup 和 netstat。

Fury Road:计费开发人员的旅程

4. 网络与安全

计费与网络和数据保护要求密切相关。 如果不了解网络的工作原理,就无法编写在线服务,因此您需要学习基本概念和协议:DNS、OSI 模型、HTTP、HTTPS、FTP、SSL、TLS。 然后,当您遇到 Connection Refused 错误时,您就会知道该怎么做。

5. 服务器

学习完网络信息传输原理后,就可以开始服务器操作的基础知识了。 从 Web 服务器开始:IIS、Apache、Nginx、Caddy 和 Tomcat。

在列表的下方:

  • 反向代理;
  • 匿名代理;
  • 缓存;
  • 负载均衡;
  • 防火墙。

6. 学习基础设施即代码

我相信这个阶段是最重要的阶段之一。 您必须了解三个广泛的主题:

  • 容器:Docker 和 Kubernetes
  • 配置管理工具:Ansible、Chef、Salt 和 Puppet
  • 备份:地形、云。

7.学习CI/CD

对于计费开发人员来说,另一项有用的技能是能够建立持续集成和交付的管道。 在 CI/CD 领域,有 Jenkins、TeamCity、Drone、Circle CI 等工具。 剧透:一开始学习广泛使用的 Jenkins 就足够了。

8. 软件和基础设施控制

关键目标是了解应用程序监控的基础知识。 该领域的工具分为三组:

  • 基础设施监控:Nagios、Icinga、Datadog、Zabbix、Monit。
  • 应用程序性能监控:AppDynanic、New Relic。
  • LMS:ELK Stack、Graylog、Splunk、Papertrail。

9. 云服务

在不久的将来,每个应用程序或软件都将有一个云对应物。 开发人员迟早会遇到云,因此请阅读流行的云提供商(AWS、Google Cloud 和 Azure)以及该技术的基础知识。

10. 使用数据库

当前的所有项目都使用数据库,拥有 DBMS 和 SQL 的经验将使上手变得更容易。 学习编写 SQL 查询、使用解释并了解索引的工作原理。 最简单的方法是参加课程。 您还可以练习 Postgres 文档技能并尝试复制。

11.提高你的软技能

这是一个出乎意料的不同寻常的点,但同样重要。 首先,要有耐心。 你很快就会习惯“修好你的熨斗,你是一名程序员”之类的情况,但你需要为启动新项目的最后期限做好心理准备。 如果你从零到一年编程,被认为是初级,准备好接受批评并学会接受它,导师的代码审查往往是一个痛苦的过程。 但与此同时,一项必备技能是能够捍卫自己的观点并进行建设性辩论;有时真理是在辩论中诞生的。 开发者永远不会停止学习,这个职业几乎没有上限,所以学习能力和学习新事物的愿望是你发展的基础。

Fury Road:计费开发人员的旅程

经常有人问我,初学者什么时候达到中级,什么时候可以自豪地称为“高级”。 我认为,从一个级别过渡到另一个级别的时间并不是由工作年限决定的,尽管实践技能是一个关键标准。 恰恰是软技能往往决定了开发人员的成长速度:一个训练有素、勤奋的初学者可以在短短几个月内用多种语言编写高质量的代码,并能够在团队中工作。 一个拥有10年经验的开发人员可能无法解决非标准问题、无法管理团队、能力片面。

这就是我对计费开发人员的发展道路的看法,这就是我们在 Forward Telecom 团队中培养合格专家的方式。 似乎没有遗漏任何东西,但我总是很感激对这一点有帮助的补充。

来源: habr.com

添加评论