草庐IT

职场人一起进阶吧(内附技术人进阶路径、Java开源项目完整推荐等)

共饮一杯无 2023-10-22 原文

目录

毕业季职场新人应如何选择工作?

技术人进阶路径

程序员三十五岁瓶颈你怎么看?

Java开源项目推荐

Java学习与面试指南

设计模式

监控与诊断

编码规范

工具库

企业级开源项目

毕业生/在校生寄语


毕业季职场新人应如何选择工作?

尽可能的选择朝阳产业,因为个人感觉大多数人的选择是大于努力的,选对了行业能让你事半功倍,就像雷军说的,在风口上猪都能飞上天呢😅。
他山之石,可以攻玉。选好大树(公司、团队、leader、big old),毕竟大树底下好乘凉,虚心请教互相学习,多沟通多交流。沟通产生价值,技术人永远不要羞于表达自己的观点,你也需要具备独立思考的能力。
做一个可靠的人。提高自己的能力,勇于挑战自己,在职场中,很多时候都是双向选择题,同样的东西你比别人做出来更可靠,更稳定,自然大家对你的信任度会提高。
珍惜时间,养成持续学习的习惯。活到老学到老,你知道的越多你不知道的也越多😅。持续学习,日常复盘,总结输出,利己利他。


技术人进阶路径

不同工作经验的朋友一些建议:

  • 工作 1~2 年,以学习知识为主,先打好基础,注意知识广度的培养,保持对新技术的好奇心,切忌心浮气躁;
  • 工作 3 年以后,需要多一些主动思考,培养自我学习能力,要有意识的提升团队协作、跨团队沟通、项目设计等能力;
  • 工作 5 年以上,要重点树立起自己的技术品牌。要经常思考业务或项目中存在什么样的问题,如何解决,解决后的收益是什么,对于管理能力要有意识的加强。

技术进阶建议:
初级-->中级-->高级,一般程序员到达高级水平之后,此时就会开始出现分水岭,就看个人的职业选择了,有人会选择走管理路线,有人会继续深耕技术。优秀的人最终会成为行业领导者,顶级的会成为行业创新/变革者(流下了羡慕的口水🤤🤤🤤)。

日常学习建议:

多看:看一些好的开源项目,看技术文章,看好的技术书籍等,并总结经验。
多写:要把看的东西变成自己的必须实践,把所说的技术通过自己的理解总结梳理并写出来加深印象,并把学会的技术运用到实战中。Talk is cheap, show me the code。
多交流:以开放包容的心态去交流,耐心听取他人意见,只有站在客观的角度去看问题才能把问题看的更透彻,只有不抵触才能让自己学到更多的东西。

 

彼得.德鲁克《成果管理》书中提到的经典:知识是人类特有的资源。书上没有知识,书上只有信息;知识是在特殊的工作和行动中运用信息的能力。用通俗易懂的话说就是:实践出真知😄。


推荐尼克拉斯·卢曼的卡片学习法,在阅读时他也会对看到的或者想到的做笔记,划一划,就像我们大多数人所做的那样,但是过了一段时间,他意识到自己的笔记没有任何意义。于是他开始想有没有更好的尝试做笔记的方法。他开始尝试改变做笔记的方法,没有直接写在书本空白处或者写在一本书上,而是将他们全都写在小卡片上,并编上号码,收集到一个盒子里。
因为他意识到,如果只是把笔记积累在一个地方,除了产生大量的文字,不会再有其他的成果,都只是碎片化的知识或看法,无法形成系统的想法。他将卡片分成三大类:1.闪念笔记:阅读或生活中突然产生的灵感或想法。2.文献笔记:阅读中直接引用的文章材料等。3.永久笔记:通过阅读产生的联想或者洞见。同时,他将笔记之间建立索引与主题,让他的笔记形成网状结构,同时又有同一主题。卢曼本人通过用阅读和写作完成从普通的公务员到德国知名的社会学家的逆袭。

程序员三十五岁瓶颈你怎么看?

随着年纪大了,跟年轻人比体力比加班肯定是比不过了。😪作为35岁的程序员肯定不只是一个写代码的工程师了。个人认为35岁前需要建立的核心竞争力能够让你35岁还能稳如老🐶。

  • 工程能力: 对团队规范、效能、质量做相关改进。
  • 架构能力: 能够从业务痛点和现在的复杂问题提出你的建设性意见,并提供相关架构能力做支撑。熟悉业界通用的架构设计,并能从自身业务出发来优化或者重构团队的业务和技术架构。
  • 细节把控:从一些隐蔽的坑、风险、线上问题或者技术难点来提供具有建设性的解决方案。
  • 团队管理能力: 具备一定的团队管理人力和培养人的能力,最好有数据做相关支撑。
  • 技术视野: 足够了解业务领域的架构与技术,并对比出优劣,可以想到哪些能力在未来可以沉淀输出,并表达出一定的技术前瞻性。

Java开源项目推荐

Java学习与面试指南

  • architect-awesome

后端架构师技术图谱
github地址:https://github.com/xingshaocheng/architect-awesome

  • JavaGuide

「Java学习+面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识。
github地址:https://github.com/Snailclimb/JavaGuide

  • leetcode-master

《代码随想录》LeetCode 刷题攻略:200道经典题目刷题顺序,共60w字的详细图解,视频难点剖析,50余张思维导图,支持C++,Java,Python,Go,JavaScript等多语言版本,从此算法学习不再迷茫!🔥🔥 来看看,你会发现相见恨晚!
github地址:https://github.com/youngyangyang04/leetcode-master

  • CodeGuide

一线互联网 Java 开发的学习历程技术汇总,旨在为大家提供一个清晰详细的学习教程,侧重点更倾向编写Java核心内容。
github地址:https://github.com/fuzhengwei/CodeGuide

设计模式

  • java-design-patterns

Design patterns 是程序员在设计应用程序或系统时可用来解决常见问题的最佳实践手册。
github地址:https://github.com/iluwatar/java-design-patterns

  • itstack-demo-design

《重学Java设计模式》是一本互联网真实案例实践书籍。以落地解决方案为核心,从实际业务中抽离出,交易、营销、秒杀、中间件、源码等22个真实场景,来学习设计模式的运用。
github地址:https://github.com/fuzhengwei/itstack-demo-design


监控与诊断

  • Arthas

Arthas旨在帮助开发人员解决Java应用程序的生产问题,无需修改代码或重新启动服务器。有了Arthas,你就可以在不重新启动JVM或需要额外的代码更改的情况下实时地对问题进行故障排除。
github地址:https://github.com/alibaba/arthas

编码规范

  • P3C

Alibaba提供的Java编码规约扫描插件,同时附带编码规范文档。
github地址:https://github.com/alibaba/p3c

工具库

  • Guava

Guava工程包含了若干被 Google 的 Java 项目广泛依赖 的核心库,例如:集合 [collections] 、缓存 [caching] 、原生类型支持 [primitives support] 、并发库 [concurrency libraries] 、通用注解 [common annotations] 、字符串处理 [string processing] 、I/O 等等。
github地址:https://github.com/google/guava

  • Hutool

Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。
Hutool中的工具方法来自每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;
Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的bug。
github地址:https://github.com/dromara/hutool

企业级开源项目

  • jeesite

JeeSite 是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Spring MVC、Apache Shiro、MyBatis、Beetl、Bootstrap、AdminLTE)采用经典开发模式,让初学者能够更快的入门并投入到团队开发中去。在线代码生成功能,包括核心模块如:组织机构、角色用户、菜单及按钮授权、数据权限、系统参数、内容管理、工作流等。采用松耦合设计;界面无刷新,一键换肤;众多账号安全设置,密码策略;在线定时任务配置;支持集群,支持SAAS;支持多数据源;支持微服务。
github地址:https://github.com/thinkgem/jeesite

  • Cloud-Platform

Cloud-Platform是国内首个基于Spring Cloud微服务化开发平台,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关API 管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。 核心技术采用Spring Boot 2.4.1、Spring Cloud (2020.0.0)以及Spring Cloud Alibaba 2.2.4 相关核心组件,采用Nacos注册和配置中心,集成流量卫兵Sentinel,前端采用vue-element-admin组件,Elastic Search自行集成。
gitee地址:https://gitee.com/geek_qi/cloud-platform

  • mall

mall项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现,采用Docker容器化部署。 前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。 后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等模块。
github地址:https://github.com/macrozheng/mall

  • RuoYi

基于SpringBoot的权限管理系统 易读易懂、界面简洁美观。 核心技术采用Spring、MyBatis、Shiro没有任何其它重度依赖。直接运行即可用。
github地址:https://github.com/yangzongzhuan/RuoYi
基于Spring Boot、Spring Cloud & Alibaba的分布式微服务架构权限管理系统。
github地址:https://github.com/yangzongzhuan/RuoYi-Cloud

毕业生/在校生寄语

一分耕耘一分收获,制定长期有效的计划,坚持自己的梦想勇敢的去追逐。
 

活动地址:毕业季·进击的技术er

有关职场人一起进阶吧(内附技术人进阶路径、Java开源项目完整推荐等)的更多相关文章

  1. ruby-on-rails - 'compass watch' 是如何工作的/它是如何与 rails 一起使用的 - 2

    我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t

  2. java - 等价于 Java 中的 Ruby Hash - 2

    我真的很习惯使用Ruby编写以下代码:my_hash={}my_hash['test']=1Java中对应的数据结构是什么? 最佳答案 HashMapmap=newHashMap();map.put("test",1);我假设? 关于java-等价于Java中的RubyHash,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/22737685/

  3. ruby-on-rails - 如果我将 ruby​​ 版本 2.5.1 与 rails 版本 2.3.18 一起使用会怎样? - 2

    如果我使用ruby​​版本2.5.1和Rails版本2.3.18会怎样?我有基于rails2.3.18和ruby​​1.9.2p320构建的rails应用程序,我只想升级ruby的版本,而不是rails,这可能吗?我必须面对哪些挑战? 最佳答案 GitHub维护apublicfork它有针对旧Rails版本的分支,有各种变化,它们一直在运行。有一段时间,他们在较新的Ruby版本上运行较旧的Rails版本,而不是最初支持的版本,因此您可能会发现一些关于需要向后移植的有用提示。不过,他们现在已经有几年没有使用2.3了,所以充其量只能让更

  4. java - 从 JRuby 调用 Java 类的问题 - 2

    我正在尝试使用boilerpipe来自JRuby。我看过guide从JRuby调用Java,并成功地将它与另一个Java包一起使用,但无法弄清楚为什么同样的东西不能用于boilerpipe。我正在尝试基本上从JRuby中执行与此Java等效的操作:URLurl=newURL("http://www.example.com/some-location/index.html");Stringtext=ArticleExtractor.INSTANCE.getText(url);在JRuby中试过这个:require'java'url=java.net.URL.new("http://www

  5. ruby-on-rails - Rails 中的推荐引擎 - 2

    我想为我的Rails网络应用程序提供推荐功能。特别是,我想向新注册的用户推荐他可能想要关注的其他用户。Rails中是否有用于此目的的引擎/gem?如果没有,我应该从哪里开始构建它?谢谢。 最佳答案 有Coletivogemhttps://github.com/diogenes/coletivo我试了一下。在MySQL上运行。Neo4jhttp://neo4j.org真的很容易实现一个“跟随谁”。事实上,大多数展示其能力的样本都涉及“跟随谁”。快速提示-只有在JRuby上运行时,Neo4j.rb才会很酷。如果不是-使用Neograph

  6. java - 我的模型类或其他类中应该有逻辑吗 - 2

    我只想对我一直在思考的这个问题有其他意见,例如我有classuser_controller和classuserclassUserattr_accessor:name,:usernameendclassUserController//dosomethingaboutanythingaboutusersend问题是我的User类中是否应该有逻辑user=User.newuser.do_something(user1)oritshouldbeuser_controller=UserController.newuser_controller.do_something(user1,user2)我

  7. java - 什么相当于 ruby​​ 的 rack 或 python 的 Java wsgi? - 2

    什么是ruby​​的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht

  8. Unity 热更新技术 | (三) Lua语言基本介绍及下载安装 - 2

    ?博客主页:https://xiaoy.blog.csdn.net?本文由呆呆敲代码的小Y原创,首发于CSDN??学习专栏推荐:Unity系统学习专栏?游戏制作专栏推荐:游戏制作?Unity实战100例专栏推荐:Unity实战100例教程?欢迎点赞?收藏⭐留言?如有错误敬请指正!?未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------

  9. Observability:从零开始创建 Java 微服务并监控它 (二) - 2

    这篇文章是继上一篇文章“Observability:从零开始创建Java微服务并监控它(一)”的续篇。在上一篇文章中,我们讲述了如何创建一个Javaweb应用,并使用Filebeat来收集应用所生成的日志。在今天的文章中,我来详述如何收集应用的指标,使用APM来监控应用并监督web服务的在线情况。源码可以在地址 https://github.com/liu-xiao-guo/java_observability 进行下载。摄入指标指标被视为可以随时更改的时间点值。当前请求的数量可以改变任何毫秒。你可能有1000个请求的峰值,然后一切都回到一个请求。这也意味着这些指标可能不准确,你还想提取最小/

  10. 【Java 面试合集】HashMap中为什么引入红黑树,而不是AVL树呢 - 2

    HashMap中为什么引入红黑树,而不是AVL树呢1.概述开始学习这个知识点之前我们需要知道,在JDK1.8以及之前,针对HashMap有什么不同。JDK1.7的时候,HashMap的底层实现是数组+链表JDK1.8的时候,HashMap的底层实现是数组+链表+红黑树我们要思考一个问题,为什么要从链表转为红黑树呢。首先先让我们了解下链表有什么不好???2.链表上述的截图其实就是链表的结构,我们来看下链表的增删改查的时间复杂度增:因为链表不是线性结构,所以每次添加的时候,只需要移动一个节点,所以可以理解为复杂度是N(1)删:算法时间复杂度跟增保持一致查:既然是非线性结构,所以查询某一个节点的时候

随机推荐