我的程序人生何去何从

桂林seo半杯酒博客

本人 83 年出生,到现在也算是老大不小了,对自己这一次的择业真的感到困顿无比,虽然这次工作还未满一年,但到现在已经力不从心。如大家不吝惜给些建议,在此拜谢。

在上大学之前其实已经接触过编程,初二的时候家里买了台小霸王学习机,用过的人应该都知道上面有个编程语言叫 F-BASIC,当然别的型号的学习机还有一款动画编程的,只不过我那个学习机好像省略了。所以当时在朋友的建议下自学并学会了,从此开始对计算机程序产生浓厚兴趣,虽然当时在学习机上只是编一些文字选项类的游戏。

从小还喜欢画画,虽然没有专业学习过,但小学开始自己就会在书本上涂鸦,或者拿纸专门临摹漫画书上的画后上色或者自己构想,以至于到现在的工作中也享受着设计能力带给我的好处,比如界面设计,比如摄影或者 PS 图片处理,3D 建模等等。

高考那年成了政策的实验品,江苏唯有 2002 年是 3+大综合,所谓大综合就是一张卷子上有物,化,生,地,历,政 6 门课的题目,当时学习成绩还算不错的我考砸了,读了当地的一所还算知名的学校的计算机专科。没有复读的原因可能在于不想再经历高考的那种压力。

我从 05 年大学毕业到现在,基本都从事计算机编程工作,至今差不多有 10 年工作经验。

06 年第一份工作是做 ERP 软件售后,公司也不是开发 ERP 的软件公司,而是做代理销售和服务,一开始就是帮企业安装软件和教相关的人怎么使用,处理一些网络链接和软件使用中的问题,后来因为自己毕业设计用过 VB,对 VB 和数据库还算了解,就开始在这基础上帮客户进行 ERP 某些报表功能的二次开发。后来因为公司小就我一个会程序的,所以感觉有点浪费并学不到东西,毅然辞职去上海找工作。

07 年第二份工作是网络编程,当初帮朋友做网站的时候积累了一些 HTML 经验,并搞明白了 ASP 和 VB 的最大区别。前期是 TABLE 布局的 IE6 年代,从后端到前端有时候基本一个人包办,甚至还会附带一些美工设计的活。上海的 1 年多虽然幸苦,但一直认为收获不小,对服务端客户端的清晰的理解也是从那开始,也积累了对 Java 和前端的热诚和经验,并开始使用 AJAX 技术解决一些问题。因为结婚的事情,感觉两个人在上海压力太大,因为公司小工资也不高,最后还是回老家找工作。

09 年第三份工作在老家找的依然是网络编程,依然只有我一个程序员,也是从前端到后端包办,还好有个美工设计负责页面,但糟糕的设计效果让我做前端的时候倍感无力,不过至少在这里我学会了 PHP,接触到了 jQuery1.1 版本,重温了 VB,把 ERP 服装数据库的数据通过 VB 程序自动和网站数据库进行同步。结果依然是公司的整体规划不符合我的预期,虽然公司的人不少,规模也不小,但实际实现类似于凡客诚品的服装销售网站的网络技术只有我一个人,无奈最终还是选择离开。

10 年第四份工作在老婆的老家这边找的,应该算是到目前为止工作生涯中相对辉煌的时期。公司是做实体产品生产销售的,规模也不小,100 多人。一开始的上司是个女的,不过管理和为人都很不错,刚进去没到半年就把我升级为网络技术主管。带领一个包含 3 个程序员和一个美工的不算大的技术团队开发和修正公司的一个行业网站。前期也和通信工程师 2 个人把基于单片机的物联网监控平台构建起来。后来 2 年由于上司的离职,我这里的工作重点就转变为带团队专门负责这个平台的技术和优化,此时的团队成员扩展到 7 人,包括了服务器工程师 1 人,PHP 程序员 1 人,专职技术型客服 1 人,JAVA 程序员 1 人,测试工程师 1 人,通信工程师 1 人和手机安卓开发工程师 1 人。从服务器优化到手机版的初步完成,都凝结了我们这些人的心血,当时作为项目主管的我主要负责界面和功能规划,但由于老板的各种杂事的掺和导致我没有更多时间去研究和完善核心层的工作,另外监控平台的收费管理一直是我所诟病的(其实更本就没有线上收费的功能,全靠线下业务员的一次性收费)本来打算着手开发这个功能,并进一步优化通信核心,无奈老板不给我充裕的时间和抓不住技术重点的指挥让团队身心疲惫,导致团队内核心 3 人员的离职,伴随之后就是我的离职,当时因为知道物理网的方向,所以一心想找一个可以潜心开发和发挥才能的公司。

14 年到现在的第 5 份工作,刚开始还激情洋溢,通过自己的美工技术把触摸屏设备的界面统一化之后,开始着手开发这个公司的监控平台。老板一开始的指导思想就是快。无奈放弃了想研究 VC++做与底层设备通信的想法,只能用自己熟悉的 VB 构建通信核心。

然后花一天时间简单研究了下基于 HTML5 的 websocket 但没有成功,退一步还是使用了基于 FLASH 的 websocket 技术同 VB 通信。本想在整条链路通信测试程序完成跟老板提招聘的事情,一句稳扎稳打,不见效益不新增人员的说辞让我无言以对,后来持续做底层的优化和 WEB 端开发,公司虽然 20 多个人,技术有 6 个,但网络技术这块还是我一个人,从通信底层到 WEB 表层甚至数据库美工设计,都一个人包办了。

一开始还无所谓,但越来越觉得吃力,毕竟需要负责开发维护的东西越来越多。要知道整个远程监控还不是平台一个程序,整个周边配套程序如通信测试,协议生成器等等我都写了不少。昨天跟老板在去客户的路上具体探讨了下目前我负责的这个项目,让我觉得比较可悲的是,老板他说他一开始以为我全线把控把一个产品弄出来,我说我之前就说过通信底层的在原先的公司不是我弄的,虽然后来我也试着写个测试程序并跑起来,但远不是应用层面的,所以之前化了 2 个月时间弄底层通信。老板又强调说公司小,没有办法像以前的公司那样投入。所以要我一个人弄到监控平台基本完善和有盈利趋势了在考虑招聘团队。

老板的说法不是没有道理,小公司不像大公司那样能花巨资进行人员招聘整合。所以我理解老板的说法,但我所不理解的是,既然老板一直口口声声说这个是物联网远程监控是公司的目标,难道一定要盈利才能投入资金去组建团队?虽然不盈利投入有风险,但有多少成功是基于风险系数最小化之上的。

另外现在核心层我花了约 10 个月时间已经完成,WEB 层还有一些业务功能没弄完,但自己知道需要修改的地方不少,老板呢也不是互联网技术出生,或者说不是技术出生,对网络这块的了解就更加缺乏,一直跟我提一个概念就是外面有的就不要自己开发,拿来就用花点钱也值得。没错,可能是我一开始就没有理会他快速实现的方法其实是让我有技术背景的先去找找外面有现成,可以把关到底能不能适用,或者做小型的技术修改就可以产生效益的,但我的个性还是偏技术,另外对于自己经历过这么多互联网技术产品,也知道有些细节你一旦要想改,就必须全盘吃透,否则很难下手,特别是应用类的产品。

所以现在自己很失落,不招聘的情况下,一旦客户提技术细节修改我就必须得花时间一一应对,而实际项目的优化工作则远远不能开展,另外可能还要到现场做售后和维护工作,这些其实到今天已经都发生了,虽然跑的地方仅是上海离的还不远,不过说到这里大家都能体会的一个常识,基于控制器/触摸屏的远程监控平台不是靠一个人的技术和时间就能做到盈利,如果盈利和未来我都能把握,我还要在这里上班干嘛,我何不自己去开个公司跟其他有需要的厂家配套赚自己的钱。

看着自己从底层开始到现在的 WEB 界面所写的代码和做的软件程序,感觉像自己的孩子一般怜爱。真要离开几多不忍,真不离开又让我前途未卜。另外已经有个客户用上了测试版的,虽然老板说不收费,但昨天提的外观需求就让我倍感压力,本来业务层的功能还有几个没弄完,现在又要着手弄表现成的东西。

主要矛盾是:长期一个人开发不见天日起早贪黑和力求完美的展现给客户受到客户好评和不肯在前期花大钱找人完善团队和力求快速看到盈利点的矛盾。

我的压力与疑惑:这个公司我还有呆下去的必要吗?虽然说当下的困难是培养我做以后的项目负责人所需经历的,但现在一者拿不到我觉得值得的工资,目前拿到手 3800 左右,和上一份工作比差了近 1500。为了人情与自己的理想而进来,却没考虑需要怎样的外部条件才能适合我所构想的产品实现。

另外到现在老板说的不招聘人的原则,让我远看不到我的前途,毕竟不是一个人能弄好的项目。如果我走,已经给客户的东西怎么办,是不尽人情或者说职业道德的丢给老板自己处理,还是我弄完这些在离职?但最近真的没有心情来应付这些优化和开发。只想去旅行透透气,虽然想去上海工作,但考虑到家里的孩子和老婆的生活和回家那种温馨的归属感,依然想留在本地,但本地的计算机发展从招聘网站上就可以说明问题。

人生在遇到这个节点的时候该何去何从,最近一直在考虑。是再到一个公司去做类似的主管来担负责任,还是纯粹做一个技术人员,把我的绘画和程序结合一心找个适合的前端工作,还是回家和老爸把自己家的面店搞搞好,从此放弃程序的道路,迷茫。