程序员如何自我成长

大多数未毕业和工作不久的程序员同学都存在以下几点迷茫:

针对未毕业的计算机同学来说,存在迷茫点有:

1. 不知道社会上企业需要怎样的技能

2. 不知道如何选择第一份工作

3. 在大学接下来的日子如何提升自己,为找工作做准备

针对工作5年之内的程序员同学来说,普遍存在的迷茫点有:

1. 工作过程中如何提升自我技能

2. 跳槽面试超级不自信,觉得工作1-2年感觉什么都没学到

3. 自己渴望有所提升,希望有大牛带领自己提升,但是迟迟找不到,非常困惑如何提高

4. 对自己后面工作规划完全不清楚,担心下一份工作坑更大。

本文,将对以上迷茫点结合自己的一些经历来给广大存在迷茫的同学指引。

针对还未毕业的程序员同学而言:

首先第一点,不知道企业需要怎样的技能,针对这点相信有一些动手能力的同学都会上网百度类似“Java 面试题”或者“买一些面试宝典的书籍”,没有动手能力的同学可能希望大牛告诉他们答案。也许是因为他们觉得网上的帖子不够专业吧。但是这里需要强调的一点就是,做程序员最重要的是动手能力,所以我这篇文章做完指引之后,大家一定也去看和实践。别空想。

这里针对第一点,我这边给出2篇认为比较全面的知识点的文章:

阿里,百度,腾讯等一线互联网公司招聘Java程序员的技术标准

Java面试通关要点 汇总集【最终版】

大家可以在校期间可以努力把这2篇文章中的知识点弄懂,相信出来的找工作的时候就能游刃有余了。

针对第二点,不知道如何选择第一份工作,我个人的建议,毕业后第一份工作比较重要,如果有好学历的同学可以优先考虑去BAT等这样的大公司,因为大公司对于人的培养比较看重,尤其自己刚工作,不知道如何选择的时候,如果没有好学历的同学,也有一些参考指标:去一些比较有潜力的创业公司。比如电商、金融、旅游等领域。实在没有不好区分,或者进第一家公司后,感觉不是自己很满意的,也不要自暴自弃或者立刻选择离开。这时候应该静下来心来,想想当初选择这家公司是什么吸引你,以及你最初想进来打算如何做。如果目前没有达到你最初想进来学到的水平,那先不要换新的机会,因为这样你同样到另一家也会面临这样的情况。目前可以按照自己的初衷,先在这家公司学习,公司给不了平台,先自己学习,网上那么多资料,书籍,现在想学的技术,或者其他方面,相信自然可以找到地方可以让你提升的,然后在看看公司有没有项目可以拿来实践,这个实践如果老大不认可,你可以抽一个模块用私底下的时间来做练习。

针对第三点,也就是好好把第一点列出来的知识点去看去实践,摸透模深。同时某些点可以结合一些网上好的开源项目,比如阿里的dubbo、 spring 框架等。

针对工作了1到5年的小伙伴:

可能未工作的时候未做好规划,或者工作后又陷入迷茫了,也大多数会有我以上列出的几点问题。

针对第一点,工作过程中不知道如何提升。其实这点我觉得很多人根本不是不知道,而是懒得做。或者说没有执行力吧,或者觉得学了这个之后好像没什么用等待想法。工作中的提升我总结下来分为几个点(后面还有更大一些点):

1. 技术能力

2. 沟通能力和学习能力

3. 责任心

4. 行业的看法和管理人的能力

所以,不知道如何提升的同学,可以针对这几点进行提升。

技术能力——无非也就是前面列出的一些知识点。以及多看一些技术博客、书籍和开源代码。但是看的过程中,一定要多为自己多个为什么?dubbo 的超时机制是如何实现的、netty如何做到高性能的、Spring是如何做到自动注入的、Spring的类的加载方式怎么完成等。

沟通能力和学习能力——这点就看自己了,需要做大量第一点的练习,一步步积累学习能力。等你懂了很多原理性的东西之后,看的源码实现方式多了之后,学习能力自然提升了。沟通能力可以看看一些软文、书籍、如:人性的缺点、好好说话等书籍吧

责任心——这个可能需要工作过程中慢慢培养的吧。总之,就是做一个靠谱的人,怎样算一个靠谱的人,今天看到的一句话就是,凡事有交代、件件有着落、事事有回音。觉得概况的非常好。

行业的看法和管理能力——这点就是慢慢自己积累了,可以通过一些书籍和文章进行参考。例如 技术领导力、技术管理之巅等书籍。

针对第二点,跳槽不自信。有这个问题,根源还是出在第一个问题上面。因为有些同学在之前工作过程中,以上4点能力根本没有提升,但是又不满足现在的公司,所以想跳槽,但是面试被打击后就越来越不自信了,不知道如何提升可以面试到。

所以我还是那句话,对于程序员来说,动手非常重要,不自信是因为你不懂,所以要让自己自信,需要从0开始,做好一件或者多件自己之前不擅长的事情,这样慢慢就会有底气有自信。做成一件不擅长的事情包括:弄懂一个自己不了解的技术点,如Spring 框架原理等、如自己英语不好,从头开始学,最后取得好的成绩点。这个点没有人可以帮助到你,只有你自己,坚持、耐得住

针对第三点,是和第一点有重合,第一点也介绍具体如何提升了的。

对于第四点,在换下一份工作的初衷吧。有些人同学可能会为了钱换一份工作、有些会为了发展、能力的提升。所以如果是为了钱,你就换一家高薪的,能够换到的前提在于前面说的4点的提升。如果是为了持续发展,这时候就需要找一些大的平台,以及知名的平台的。

今天本篇文章的介绍就到这里,如果觉得对有有所启发和帮助,帮忙转发和赞赏下的,谢谢。如果有任何问题,也随时欢迎和我沟通的

原文地址:https://www.cnblogs.com/zhili/p/9652010.html

时间: 2024-07-30 14:43:12

程序员如何自我成长的相关文章

论程序员的自我“修炼”

Q:ada最近看新闻了吗奥巴马在接受电视采访的时候说所有人都应该更早的学习如何编程,其实随着全民编程时代的到来,运用一门程序设计语言编程对于大多数程序员来说更是小菜一碟,但是如何更上一层楼成为一名专家级的软件开发者呢? A:通常啊对于一个IT从业者,让你谋得工作的也许是技术能力,但有助于提升职业生涯的却是软技能.你不可能一辈子只做开发,这是IT行话,步步高升的人都是那些发表文章.在会议上积极发言以及关注客户的员工(程序员).通常情况下,企业CIO或多或少都具备人文社科专业学历背景,原因就在于其在

一个程序员的自我修养

在网上看到一篇程序员的自我修养,深以为然,不禁摘录一些,勉励自己 一个好的开发人员,应该能够全面.高效.严谨的去处理任何软件程序和业务问题,成为一个好的开发,是一个很有意思的话题,不过无论这个话题如何开展,基础两个字必不可少,虽然代码量是衡量开发能力的重要指标,但仅能够熟练的进行代码编写是不够的,更要能深刻的理解技术原理和业务逻辑,扎实的个人基础和技术基础往往会促进代码的编写,更游刃有余的解决问题. 下面说的一些基础,可能绝大部分开发人员都不会在意甚至忽略,但恰恰这些才是开发大厦的基石. 1.科

程序员的自我修养:(1)目标文件

程序员的自我修养:(1)目标文件 1.目标文件 1.1 编译与链接 在使用像Visual Studio或Qt Creator等IDE时,通常有一个叫做"构建"的按钮.当编辑完成要运行和测试时点一下它,程序就能跑起来了,所以我们很少关心编译和链接.其实,编译和链接合并在一起就称为 构建(Build).简单的一次按键,实际背后却是异常复杂的过程: 预编译(Preprocessing) 编译(Compilation) 扫描:算法类似有限状态机(FSM),将字符转换成Token. 语法分析:分

程序员的自我修养 学习笔记(1)

本文源自在学习<程序员的自我修养>中的心得体会. 对于底层系统程序开发者来说,硬件平台可以抽象为三个主要部件,CPU.内存.I/O控制器. 早期的计算机没有复杂的图形功能,CPU和内存之间的频率差异不大,它们都是连接在同一个bus上面的.其他I/O设备,诸如显示设备.键盘.磁盘等速度比内存.CPU慢很多.为了IO设备与CPU.内存之间的协调通讯,一般每个IO设备商都有相应的IO控制器,早期的硬件结构图如下: 随着技术的进步,CPU的频率越来越高,内存跟不上CPU的速度,他们之间就需要一个转换机

【原创】PHP程序员的技术成长规划

PHP程序员的技术成长规划 作者:黑夜路人(2014/10/15) 按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定学习成长目标. 本文按照目前主流技术做了一个基本的梳理,整个是假设PHP程序员不是基础非常扎实的情况进行的设定,并且所有设定都非常具体明确清晰,可能会让人觉得不适,请理解仅代表一家之言.(未来技术变化不在讨论范围) 第一阶段:基础阶

程序员的自我修养(一)

程序员的自我修养,最开始看这本书是在学校的图书馆,当时翻了几下,发现这本书内容还真挺特别的.是浙大几个老师写的,就更感觉亲切了,所以自己买了一本书来看看,这也是我到研究生之后买的第一本书了,哈哈,平时都是pdf啥的,其实pdf真不好看. 言归真正,讲讲昨天看到的 从一个HelloWorld程序开始讲起 #include<stdio.h> int main() { printf("helloworld") return 0; } 从高级语言到操作系统可以执行的语言,这里有几个

程序员生存定律--成长路上常见的坑

程序员生存定律这系列的目录在这里:程序员生存定律--目录 喜欢从头瞄的,可以移步. ------------------------------------------------------------------------------- 前面讲到了程序员成为高手需要有一张地图,借助这样一张地图,程序员可以尝试成为架构师.Guru或者纯管理者.但这条路总是不会那么顺畅. 升级练功流的网文中总会给修仙的主人公设置下几大关卡,比如:金丹难成.元神难成.成了元神后还有天人五衰等等.没有这些关口,情

读《程序员的自我修养》感受

这书不错,链接-装载-库 我觉得是很底层的东西.比如很多人闭着眼睛都能写出来的hello world(当然不包括brianfuck,如果你会,你真的闹残了吗= =), 其实链接编译器做了很多,不然就哪来的printf,这IO初始化也是CRT(c runtime)库完成的.堆栈的初始化,还有系统装载让程序运行等等.涉及很多. 书里后面就讲了一个CRT库,自己写一个,感觉不错,学了很多.比如malloc,free的实现,话说还是跨平台的.当然库很小,功能不多,不过写这个也可以学学算法.内存的分配,这

程序员的自我修养 学习笔记(4)

可执行文件只有装载到内存以后才能被CPU执行.程序就将是菜谱,CPU就像是厨师,计算机的其他硬件就像是厨具,整个炒菜的过程就是一个进程.同样的一份菜谱,不同人可以做出来不同的味道.这个类比真是巧妙. Linux下面,进程最大使用3G的虚拟空间 Windows下面,进程最大使用2G的虚拟空间 现在计算机,配置超过4G的内存的电脑已经不是不可能了,在这种情况下,32位CPU能够访问到大于4G的空间吗?如果此空间指的是虚拟地址空间,由于32位CPU的指针只能是32位,最大寻址范围是0~4GB.如果此空