开发者必须会写程序,这是显而易见的。然而,如果能够拥有一个更广泛的“软技能”和技术组合,肯定不会给你带来伤害。有时,开发者只能在完成与自己核心技能相关的任务时才会真正发挥作用,但更多时候会在开发者产生的代码要编写被很多其它部门的人员使用(或者会被使用)的代码时有效。
为此,作为程序员和博主的Radek Pazdera为那些希望自己工作能够带来更多价值的开发者列出了一个清单,包含了那些非常重要的相关技能。
设计是关键
无论你是一个自由职业者或者初创公司的雇员,在今天的IT市场中,那些有能力开发有着花俏的用户界面和用户体验的移动、web应用程序的人变得炙手可热。Pazdera指出,许多开源项目一直在寻找设计师,而这不一定必须是真正专职的设计师。通过一些试错、阅读书籍以及学习YouTube教程,你也可以快速获取一些当下所需要的设计技能。
软硬件相结合
通常来说,使用开源软件的并不是解决专利和付费的“银弹”。它并不会蔓延到物理产品,因为在今后一段时间里,硬件和电子技术依然是构成IT的重要资源。
通过物联网的可穿戴设备,Pazdera举例说明最近开拓的新兴领域。在这些领域中,我们还没有发现最好的硬件。一开始,我们可以看到一些原型或者概念验证设备。在这些设备中,你可以加入一些微控制器、电阻器以及C编译器。
数据无处不在
大数据已经成为一个非常重要的商业因素。对于开发者来说,学习如何处理大规模数据变得更加重要。作为开发者,当你学习处理数据库和日志系统时,并不会经历特别陡峭的学习曲线。互联网针对数据分析提供了大量合适的工具,包括文档和教程。
市场
尽管Pazdera承认市场营销在开发者中的评价可能不会很高,但如果你试图研究如何在自己产品中获利时,市场营销依然是一个重要的手段。并且今天要比其它任何时候都容易。移动支付系统以及在线商店都为卖家和买家带来了让人惊奇的便利。
你还必须要保证人们真的想要那些你能够提供的产品。处理市场营销相关的事情,对于跳出只考虑利润的思维模式大有帮助。作为开发者,你可以在一个目标明确的小组中贡献力量,然后进行产品分析。Pazdera以云提供商为例,指出他们应该特别改进产品以适应开发者,成为其中一员当然更好。
管理
那些工作在中等规模团队中的人知道,在编程领域中,处理与人相关的任务和处理和代码本身相关的任务一样重要。当程序员流失或者公司不能留住优秀的程序员时,就会遭受损失。这样,由资深开发者进行管理变得非常受欢迎,因为他们要比那些“程序员”更好地理解程序员的诉求。
如果自己独立去学习管理所必须的技能,可能是棘手的。Pazdera建议,首先试着去接受责任,将合作和帮助作为你工作的重中之重。这样可以加强团队和同事在专业方面的战斗力,从而产生一个愉快的工作氛围,并且为你的管理绩效带来更好的结果。
写代码
编写程序要作为开发者的额外能力?Pazdera说是的!对于那些将激情只挥洒在代码上的人来说,他们应该继续坚持下去,在自己的“一亩三分地”中试着做到最好。但是这里最重要的就是毅力和软件,当然你可以选择在哪个方面成为专家。对于那些可以为此进行支付的公司来说,这种多面手可能不是它们想要的。更大的公司通常都需要要一些软件专家。
休息的人在荒废
Pazdera指出,对于开发者,一件非常重要的事情是不能够只做那些他们了解的事情,而是要意识到他们可以通过和其它相关技能相结合的方式,来优化自己的核心能力。当然还有更多是Pazdera没有提到的。
正如Pazdera总结的那样,未来开发和发展会有无限可能,做一个“定制”的软件开发者是一件双赢的事情。