Java程序员为了完成月入三万的目标,我都做了哪些准备?
1.我觉得像我这般年纪的(29岁),有相对扎实技术功底的(就不自谦了),对赚钱有着强烈欲望的程序员,应该定一个切实的小目标——五年内月入三万!
之所以要定这个目标,最主要的原因是老婆的批评刺痛了我——一个身强力壮的年轻男子(脑子也还好使),不想方设法的多挣点钱,简直就是对自己人生的不负责任;嗯,也是对家庭的不负责任——有罪啊!
次要的原因是业界(IT)的大牛“纯洁的微笑”对“挣钱”的认知警醒了我:
千万别把有本事挣钱的人,当成臭奸商;挣钱能力,几乎是判定一个人综合能力的最高标准。能够挣到钱的人,只要不是违法所得,你会发现这个人的洞察能力,执行能力,管理能力,心理素质,意志品质等等,都会比一般人强。
2.先说一句垂头丧气的话:**我出身不好,不过一个卖草鞋的。**哦,说错了,我比刘皇叔的出身好多了,没穷到卖草鞋的份啊(据历「记」史「忆」记载)。尽管父母都是面朝黄土背朝天的农民,但在上学的年纪,他们可一点没亏待过我。和王思聪那样的Super富二代自然是没得比;但毕竟没饿过肚子啊
我以前经常后悔,后悔自己只考了个三本,上了一个不入流的大专,所以没有一个更好的平台来展示自己的才华。现在想想,以前的自己可真够自以为是的!高考没考好(≈学习不好),那全怪我自己,怨不得别人啊!
没上好大学,不要紧啊,实习的时候,公司没少有研究生啊;我不是和人家站在同一条起跑线了嘛。之所以最后混得不好,关键的问题还在自己,你看:
第一,不懂人情世故;你比如说早上见到领导要礼貌的“早安”啊;酒桌上领导敬酒的时候酒杯要低半杯啊;领导夸夸其谈的时候要拍马屁啊。等等这些,我年轻的时候竟然不屑于去做!
第二,不会默默背锅;你比如说,领导在领导的面前对着我发脾气的臭骂:“你个傻X,当初我不是要求你这样实现功能的,你看你做出来的是个屁!”听到这话,咱就火冒三丈,直接怼回去:“这不你当初要求我这么做的嘛,现在该背锅的时候扔给我了啊!”
第三,不敢主动提薪;你比如说,领导摆出一副慈悲的样子:“王二啊,你这一年在写代码的能力上进步很大,有目共睹啊;咱们团队遇到的技术难题多亏了你加班加点的调查,才得以解决;你也是我重点培养的对象,所以,我想这次涨薪由你说了算,你说说,你要涨多少?我绝不会亏待你。”咱心想啊,领导这么器重自己,于是脱口而出:“800吧!”听到领导不假思索回答:“才800啊,我肯定满足你!”我脑海中刹那间想起来了一幅徐悲鸿的“万马奔腾”图!好不容易等到一次大幅加薪的机会,我竟然那么小心眼——只敢提800,愧对领导一番盛情啊!
3.往事不堪回首,就不多提了。往后去,得做一些积极的准备。领导靠不住,工资靠不住,还得靠副业——自己为自己打工——你不能老指望着领导带领咱们走向“发家致富”的康庄大道啊,人家属于“少部分富起来的人”,至于富起来后带不带咱们,那得看天意!但天意一般习惯捉弄人。
作为一名有8年工作经验的程序员,实现月入三万的目标,难度并不很大,关键看自己敢不敢付诸行动!此话怎讲?且听我详细分析:
第一,接私活做啊——风险小,零成本投入,唯一担心的就是甲方靠不靠谱,结款什么时候到账。如果去买彩票、买股票、买期货,那挣钱的概率几乎和诸葛亮借东风的概率差不多——完全碰运气啊。接私活就不一样,虽然挣的是辛苦钱,出卖的是自己的时间、精力,但挣什么钱都不容易啊!付出才有回报嘛!
不只是接私活,还得成立组织来接私活。有了组织好办事啊,大家可以共享资源,共享技术,共享创意!
基于这样的想法,石磊、小龙和我(王二),三个人就成立了一个组织——青苗科技工作室(有没有高大上?)。名字听起来很专业,很生机勃勃吧!我们三个人的技术可以互补,Web开发、IOS、安卓、小程序、公众号,几乎所有的项目都可以承接,完全不必再畏首畏尾!
第二,建立生态系统——逐步积累,长期发展。
有了组织,可不只能用来接私活。最重要的是,建立属于我们青苗科技的生态系统,像JEECG、JEECMS、JFinal 那样——通过开源核心框架来吸引流量,同时为中小微企业定制软件来获取盈利。
第三.拥有一套完整的技术知识(持续学习实战,提升技术栈)
欢迎工作一到五年的Java工程师朋友们加入Java架构开发:760940986
群内提供免费的Java架构学习资料(里面有高可用、高并发、高性能及分布式、Jvm性能调优、Spring源码,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多个知识点的架构资料)合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!
设计模式
设计模式是可复用面向对象软件的基础,学习设计模试是每个程序员从菜鸟走向大神的必经之路,巧妙地运用设计模式可以使我们的代码看似复杂实际简洁、复用性更高、更容易被别人理解等好处,同时也是学习软件工程的基础和必然。
并发编程
主要培养编程者深入了解最底层的运作原理,加强编程者逻辑思维,这样才能写出高效、安全、可靠的多线程并发程序。
开发工具工程化
通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。程序员的战斗,往往不是一个人的战斗,我们如何在一个平台下高效的去重,进行代码review,对功能进行调整,debug,做到在统一的规划下步步为营,混乱的堆代码的过程中找到自己的记录。这一切都依赖于有效的工具。
性能调优
我们不仅仅对项目要运筹帷幄,还要能解决一切性能问题。只有深入学习JVM底层原理,Mysql底层优化以及Tomcat调优,才能达到知其然,知其所以然的效果。除了性能优化之外,也能提供通用的常见思路以及方案选型的考虑点,帮助大家培养在方案选型时的意识、思维以及做各种权衡的能力。
源码分析
程序员每天都和代码打交道。经过数年的基础教育和职业培训,大部分程序员都会「写」代码,或者至少会抄代码和改代码。但是,会读代码的并不在多数,会读代码又真正读懂一些大项目的源码的,少之又少。这也造成了很多错误看源码的方式。
那要如何正确的分析源码呢?
我们的目标应该放在最常用的框架上面,下面就介绍两个:一个是Spring,另一个是大家用来觉得一直不怎么出问题的Mybatis。
△spring源码
△mybatis源码
分布式架构
随着我们的业务量越来越大和越重要,单体的架构模式已经无法对应大规模的应用场景,而且系统中决不能存在单点故障导致整体不可用,所以只有垂直或是水平拆分业务系统,使其形成一个分布式的架构,利用分布式架构来冗余系统消除单点的故障,从而提高整个系统的可用性。同时分布式系统的模块重用度更高,速度更快,扩展性更高是大型的项目必不可少的环节。
分布式架构(一)
分布式架构(二)
微服务
关于微服务架构的取舍
在合适的项目,合适的团队,采用微服务架构收益会大于成本。
微服务架构有很多吸引人的地方,但在拥抱微服务之前,也需要认清它所带来的挑战。
需要避免为了“微服务”而“微服务”。
微服务架构引入策略 – 对传统企业而言,开始时可以考虑引入部分合适的微服务架构原则对已有系统进行改造或新建微服务应用,逐步探索及积累微服务架构经验,而非全盘实施微服务架构。
B2C项目实战
要想立足于互联网公司,且能在互联网浪潮中不被淹没,对于项目的开发实战演练是不必可少的技能,也是对自身能力的一个衡量,有多少的量对等于获得多少的回报。看似简单的一个项目需求图谱,其中的底层原理,实现原理又能知道多少?你搭建一个完整的B2C项目平台到底需要多少知识?这一切都是需要我们考量的。
JVM和性能优化
架构关键基础设施
欢迎工作一到五年的Java工程师朋友们加入Java架构开发:760940986
群内提供免费的Java架构学习资料(里面有高可用、高并发、高性能及分布式、Jvm性能调优、Spring源码,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多个知识点的架构资料)合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!