所以你根本不想成为一名程序员?

转行指南

我收到过很多来自职业程序员的邮件,他们在这个行业工作了一段时间,最终决定不干这行了。最近收到这封:


我去年获得了计算机科学学位,做了一年Java EE。我大学里对需求工程和“管理知识”更兴趣,但我们总要面对这样一个事实:你往往被驱使成为一名程序员。


我喜欢编程本身。我做得不错,我甚至比一些人做得更好。但是它太令人沮丧。荒谬的复杂的东西(人们认为这是“标准”,即便它极其复杂!),与计算机作斗争,各种愚蠢的错误,配置,以及其他人实现的比我更糟糕的东西,我必须要小心照料。新东西总是被认为是非常容易的,它只是一个框架。


我意识到我不想编程,因为我在一家公司工作,那里的人都很好。我真的认为我不会达到那样的水平。我也不喜欢编程。


我确信我已经足够好了,能够像这样继续生活下去。但我不想。


还有这个:


从我在大学学习编程的第一年,我就知道在我内心深处,计算机编程不是我的追求,我害怕做关于它的任何事情,现在12年过去了,编程没有激情。我是一名职业程序员,充其量只是普普通通的一个。


我每天没有激情地来上班,只是赚钱付账单。我做了一些很好的项目,但我一点也不喜欢。


我们总是希望具体的、实质性的编程职业生涯问题在Stack Overflow上被问及,而一些早期的投票也表明,职业生涯问题也会被社区接受,但如果你看看后期的投票结果,很明显,职业生涯问题在Stack Overflow社区的最下面。


那么, Stack Exchange(Mr派:一系列问答网站,每一个网站包含不同领域的问题)中的其他网站又如何呢?作为姐妹网站,programmers.stackexchange关于源代码的编程问题比较少,更多的是具有白板风格的概念性编程问题,它又如何呢?显然,职业问题也不受欢迎。但是等等!毋庸置疑,程序员职业问题在一个职业相关的网站上是合适的,类似的问题在workplace.stackexchange中会被问到。


我即将毕业,并且获得软件工程学士学位,但在获得学位的过程中,我决定不做程序员。


我选修商业管理,对此很感兴趣,尤其是管理心理学方面,还有有关重组的基本过程,但我也不想丢掉我的编程学位。


是否有这样的领域,可以让软件工程学位的人进入商业管理而不是编程?我希望将我的软件知识与某种面向业务流程的工作结合起来。我该如何转变到这个领域呢?不再回到学校学习,这有可能实现吗?


不。对不起。这也被关闭了,要么是因为它似乎是在暗示“推荐我一份工作”,要么是因为它太过于针对编程。你可以自己作解释。


我很同情这一窘境,因为职业问题,从本质上来说,往往是如此的狭隘和主观,以至于它们常常只对提问者有用这完全违背了Stack Exchange的目标。你知道,没完没了的罗列那一类问题,比如“我的老板杰夫是一个彻头彻尾的混蛋,他不停地改我的代码,不问我,总是用他的专横武断的决定来压制我,我是否应该辞职?“ 我可以理解那个排斥所有职业问题的决定,因为他们通常都是软性的、具有争议的,而且只针对提问者。放弃这个类别,总比辛苦地从里面发现珍稀的观点要容易。


Stack Exchange想要的是对尽可能多的人有用的问题,并且积极地关闭(抱歉,是“搁置”)其他问题。现在,我将重新打印我最喜欢的图表,它试图解释这一点:



这个目标中颜色的部分表示“所有的程序员”?这是Stack Exchange的目标。也许是“所有的骑自行车者”,或者“所有的厨师”,但是你会理解大致的意思。


我们尽自己最大的努力让你去问那些触及到这个美妙区域的问题:答案会让你得到你迫切需要的信息,是的,但同时也能帮助你的同伴,而不会变成毫无意义的观点蜜罐,言过其实,要么“太宽泛”,要么“太狭隘”。让我们的问题达到这个目标,或者至少是尽最大的努力去尝试,这就是我们如何通过共同的努力来达到最大的效果。书写一次,阅读多次。


但回到这个话题:对于那些不再想编程的程序员来说,什么样的职业选择是可行的呢?我觉得有一种方式可以回答这个问题,这个问题对许多其他程序员都有帮助,这都是由事实、数据和科学支持的。


编程的确是一个需要激情的领域。如果你已经编程了好几年,现在还没有产生出一点感觉,那么我觉得你以后也很难很快地对它产生感觉。然而,如果你在一段时间内能坚持做一些你不太热衷的事情,也许的确还有一些事情需要处理。或者你只是戴着金手铐。



环境在任何工作中都扮演着重要的角色,无论这工作有多么不可思议。你和谁一起工作?你在做什么?你在什么样的环境中工作:


  • 是初创企业?

  • 是小企业?

  • 是大企业?

  • 是咨询顾问?

  • 是自由职业者?

在各种情境下的“编程”,以及您将要合作的其他同行程序员,将是截然不同。首先,在最终确定你要永远离开这个领域之前,考虑一下环境和同伴可能是问题所在。你是否尝试过改变这些?


除此之外,还有很多相关的领域,拥有编程技能是具有优势的,这些工作不需要“整天坐下来写代码”。让我们思考下,有什么工作是...


  1. 编程技能和深厚的技术背景通常都是在招聘要求中的。

  2. 有记录显示了原来是程序员,后来进入这些职位并取得了成功的。

  3. 在全球范围内,此类工作的数量是合理的


我真希望我能在Stack Exchange上问这个问题,因为我更愿意用众包数据来支持以上三点,但我自己能想到的最好的就是:


  • 产品/程序经理

  • 项目经理

  • QA/测试(优秀的测试人员是很有价值的)

  • 构建工程(这种东西很难)

  • 系统管理员

  • 技术销售

  • 技术作家

  • 业务分析师/编程分析师


在许多这样的角色中,真正了解编程具体细节的人是非常罕见的。这是很不幸的,因为深厚的技术背景让您能够真正理解正在发生的事情并向客户,利益相关者,以及相关团队的同行解释。至少没有人会用技术的来忽悠你,因为你已经准备好了应对他们的虚张声势。


我发现,很少有“熟练”的程序员在以前的工作中能够对相关职业自我选择,并且在经济和职业上都做得很好。在那些工作中,有很多东西是关于编程的,而不是低头写代码,你的编程技能是一种竞争优势。


职业问题很难,因为最终只有你能决定什么是适合你的。但是,如果你是一个不再喜欢编程的程序员,你的技术背景至少可以为你打开相关职业的大门。


看完此文,你有什么想法或观点呢?欢迎在留言区留言评论。


更多精彩

程序员提升外观王小波程序员我会编程七夕表白程序员最高殊荣程序猿(媛)CP祭天Python歌词特斯拉程序媛直播鄙视链敲代码404结婚Facebook怎么进BAT女友日记高逼格指南计算机专业技能干货九寨沟地震编程习惯陆奇演讲自救指南周鸿祎谈创业




公众号ID:coder_life

扫码关注优快云程序人生

程序猿(媛)的专属公号

### 成为一名优秀的程序员 #### 对计算机科学保持浓厚兴趣 选择成为一名程序员往往源于对计算机科学的强烈好奇心和热情。自初次接触计算机以来,许多人被其工作原理及其潜在的应用深深吸引。这种好奇促使深入理解计算机的信息处理机制、指令执行方式以及程序运行环境,并通过学习编程语言进一步探索这一领域[^1]。 #### 明确目标并持续提升自我价值 掌握一两门热门编程语言固然重要,但这不应成为追求编程技能的主要驱动力。更重要的是思考编码能为自己带来什么改变——无论是解决问题的能力还是创造新事物的机会。设定清晰的职业发展目标有助于激发内在动机,从而更积极主动地投入到技术成长过程中去[^2]。 #### 掌握核心竞争力:算法思维与数据结构 长远来看,良好的逻辑分析能力和高效的思维方式构成了个人最宝贵的财富之一;而学习算法正是培养这方面素质的有效手段。熟练运用常见算法可以帮助快速定位复杂问题的关键所在,并找到简洁优雅的解决方案。此外,熟悉常用的数据结构也是必不可少的一部分,因为这直接影响到代码性能优化的效果[^3][^4]。 #### 获取必要的基础知识体系 除了上述提到的内容外,还需要具备一定的理论基础作为支撑: - **操作系统概念**:了解进程管理、内存分配等底层运作细节; - **编译原理概览**:知晓源码转换为目标文件的大致流程; - **离散数学入门**:建立坚实的抽象建模工具箱; 以上知识点共同构建了一个完整的知识框架,使开发者能够在遇到实际挑战时从容应对。 #### 熟悉网络通信协议 在网络应用日益普及的时代背景下,深刻理解各类传输层及以上层次上的标准规范显得尤为重要。特别是像TCP/IP这样的通用型协议簇,在日常工作场景里几乎无处不在。因此,务必牢记诸如“三次握手”、“四次挥手”之类的经典交互模式,以便于日后排查故障或设计高效稳定的分布式架构[^5]。 ```python import socket def create_tcp_socket(): """创建一个基于IPv4地址族的TCP套接字""" try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) print("成功创建TCP套接字") return sock except Exception as e: print(f"创建失败:{e}") raise if __name__ == "__main__": s = create_tcp_socket() ```
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值