1.工作与个人价值

软技能读书笔记第一篇:——From 安晓辉

内生涯与外生涯

内生涯包括知识、技能、工作经验、心理素质、内心情感、行为习惯、视野、观念、职业心态、职业成熟度、心灵成长。

外生涯包括职务目标、经济收入、工作内容、工作环境、工作时间、工作地点、企业文化、薪酬福利、通勤状况等。

内生涯和外生涯包含的一些东西,可能是企业选择你的依据,也可能是你选择新职业的目标。内生涯决定外生涯,外生涯拉动内生涯。

内生涯略高于外生涯,工作会驾轻就熟,感到轻松舒适,容易出成绩;内生涯高出外生涯一大截,就会怀才不遇,谋求更高发展;外生涯略高于内生涯时,会有压力,会促使提升自己的知识、技能等;当内生涯低于外生涯一大截时,就会感觉吃力,不能有效提升时就会被剥夺外生涯。

个人的商业价值包含五个因素:

  • 知识
  • 技能
  • 天赋
  • 经历
  • 人脉

择业要素:

  • 宏观环境
  • 产业环境
  • 组织环境
  • 职业环境
  • 家庭环境

高薪的谋划之道

最根本的策略是修炼内功,发挥性格优势,挖掘职业兴趣,找到适合自己的职业,发挥天赋,不断提升知识、技能,让自己的商业价值不断攀升。在一个很好的宏观环境中,在一个前景光明的产业里,在一个处于上升期的企业里,个人商业价值比较容易体现,外生涯也会超过大多数人。

修炼内功

  • 发挥性格优势
  • 挖掘职业兴趣
  • 积累知识和技能

重点说说第三个,累积知识和技能,有两个原则:

  • 职业目标相关性
  • 持续性

一样知识,一种技能,只有它和你的目标相关时才对你有用。技能分为两种:专业技能和通用技能。专业技能是对某种专业知识的应用能力,与特定职业有关。通用技能是你会做的事,是可迁移的。

通用技能对于你是否能找到理想的工作至关重要。比如创新,谈判,指导,说服等能力。通用技能是一个程序员的软实力,列举一些:

  • 自我学习和自我培养的能力
  • 与人沟通,口头表达的能力
  • 信息检索的能力
  • 写作能力

怎样知道一个职业需要什么样的技能?

  • 企业的岗位描述,晋升通道
  • 业内前辈访谈
  • 招聘网站的招聘信息

可以根据好企业的岗位描述和晋升通道知道自己应该学点什么;和前辈聊天前辈会根据自己的角度告诉你什么重要什么不重要;利用自己技术方向的招聘要求,可以列出一张知识技能清单,该学的该培训的可以做起来。

植物的生长遵循顶端优势、程序员也是。如果程序员在自己的知识图谱和技能树中,保持顶端优势现象,就可信心满满;如果知识体系和技能在企业内超越其他程序员,那一定光芒四射。

很多软件工程师的常态:什么都懂一点,都不精深;什么都能干一点,都干不专业。只是越是精深越有价值,技能越熟练产出度越高,现在以及将来是专业主义时代,如果可以沿着一个方向积累知识锻炼技能,就有竞争优势,不断用心打磨,就会产生顶端优势,越来越能解决问题,不可替代性就越来越强,商业价值就越来越高,薪酬福利就越来越好。

寻找就业机会

找外部机会时,依次考虑:行业,企业,职业。

行业:每个行业几乎都会用到软件,除了采购就是自己开发。不同行业的程序员薪酬待遇相差很大。行业越有前景,个人发展越好回报越好。每个行业都有自己的产业曲线图,一般分为形成期、成长期、成熟期、衰退期。只能考虑成长期和成熟期的企业,衰退期要极度慎重。

企业:企业也有投入、成长、成熟、衰退的发展周期。对没有冒险精神的程序员,最好的进入时机是快速成长期;想用青春赌明天的程序员,应该在投入期进入,杀出重围后回报难以想象。

至少选择朝阳行业的非衰退期的企业,或者垄断的戏份领域中。

职业:虽然都是程序员,做大数据和做终端的肯定不一样。要看你的职业受不受公司的重视。

总结:

  • 个人商业价值体现在知识、技能、经历、天赋、人脉等方面。
  • 宏观环境、产业、组织、职业、家庭等要素的综合会影响职业选择
  • 知识、技能、天赋、经验等属于内生涯,是内在质量、没有人能剥夺
  • 职务、薪酬、工作环境、工作内容等属于外生涯
  • 内生涯决定外生涯,外生涯拉动内生涯。
  • 通过对知识、专业技能、通用技能等的不断积累,形成顶端优势,可以找到更好的外生涯目标
  • 累积知识和技能时,注意职业目标相关性和持续性
  • 想要高回报,选择前景好的行业里处于投入期、成长期的公司,在企业内选择靠近核心价值链的职位。

2.程序员学习能力提升三要素

软技能读书笔记第二篇: ——From 尹华山

善于读书

买书是最划算的投资,回报率极高,不能因为工资微薄就不买书。踏踏实实消化掉一本好书,比泛泛读10本普通书,有价值得多。所以要多读经典书籍。对于开发者,图书分为三类:

  • 入门类:《xx天精通xx》《xx从入门到精通》等
  • 实现类:《xxx深度探索》《Windows下xxxx的程序设计》等
  • 大牛类:《代码大全》《编程珠玑》《重构》《设计模式》等

入门书帮你的只有入门,你会上网查也可以不买;实现类书籍内地早期只有台湾的,现在国内优秀程序员也会写。应该在你的每个学习方向上各买三两本,通过实践消化掉,成为优秀程序员。大牛类的书通常是译本,揭露本质富有思想,能给你启发,每次阅读都有新收获,具有收藏价值。通常,大牛类的书,只有在读者有丰富经验时才会有很深的共鸣。可以先买大牛书,很吃力时啃实战书。尽量不要用上班的时间看书,会拉仇恨,成为异类。

高效学习

学习最忌三心二意,能帮你专心致志的就是学习和工作有关的东西。另外,如果自己学习,不要左抓右挠东看看西看看,要挑一个能实战的方向使劲看。俗话说:伤其十指不如断其一指。另外,学工作相关的东西,等于每天的学习时间多8小时。

工作就是不断发现问题、分析问题、最终解决问题的过程,晋升之门将永远为那些随时解决问题的人敞开着。——松下幸之助

对个人学习而言,问题其实是最好的学习机会。在问题发生时,勇于面对问题并解决的人能成为骨干,也会越来越强。

在实际工作中,往往会牵出很多知识点。比如做爬虫,会涉及到采集效率,持久化存储,信息解析,安全,代码优化等方面。这样就会涉及到python,多任务,数据库,设计模式,网络协议,机器码等多个方面的知识,这样能方便的在短时间内学习很多东西,同时有广度和一定深度。

一个程序员,在学习中要善于思考,会思考的人才会顿悟。你的灵光闪现,其实是知识的内化,最后融会贯通。 在学习到一定高度是,会有瓶颈期,学了没长进,其实是你在消化,思考可以帮助你加快消化。

保持好心态

急于求成很正常,也很危险。学的快一点,紧跟时代步伐,不去学的慢一点,静心吃透每一个点,把知识沉下来。 也要知道学习是程序员一生做自我完善,更新知识库的过程。

虽然乔布斯不是技术人员,是个销售,但是引用一句话来总结:

Stay Hungry, Stay Foolish.

3.程序员的职业素养

保持对未知领域的好奇心,尽力开阔视野。

如果你只精通一门语言,赶紧去学习另一门语言,而且关系越远越好。如果只在一个领域进行专注,那去看看其他领域也会有很大帮助。

不要总想着在自己熟悉的知识结构下解决问题,要习惯经常的学习和积累新知识,不要怕有学习门槛,要保持单纯的好奇心。

把我各层次上的细节

虽然可能你只是调用,但是尽可能的理解清楚系统每个层面的运行。对细节的掌握越多,思路就会越清晰。你对于自己面对的业务的抽象能力,来自于你对业务的熟悉程度,这种能力是随同对细节的把握能力同时具备的。

提升对代码的直觉

保持自己一直有代码可写,并且对瑕疵零容忍。优秀的程序员能很快的发现性能热点、找到系统崩溃的原因,找出不合理的代码,写下每行代码都能判断其对性能的影响。

克制写代码的冲动

没有清晰的需求,没有清楚的头脑,没有良好的规划,代码写的越爽,可能后果越严重。要进行需求理解,设计系统,制定规划,这样写的代码才会更加精炼,更加聪明,程序才更有价值。

明确任务

程序员写代码不是借项目机会练手,而是应该尽心地为所服务的对象解决问题。先敬业后乐业,投入更多精力,解决项目上的问题。

人生能从自己的职业中领略出趣味,生活才有价值。——梁启超

乐于分享和交流

你搜到的知识和经验,都是别人的无私奉献,应该有感恩的心。如果有时间,应该把解决的问题,获得的经验,分享出来,节省别人的学习、开发的时间。

The Life out of coding_Employment_01的更多相关文章

随机推荐

  1. 【转】time 模块详解(时间获取和转换)

    转自鱼C论坛--https://fishc.com.cn/forum.php?mod=viewthread&tid=51326&highlight=time time 模块 -- 时间 ...

  2. asp.net core的授权过滤器中获取action上的Attribute

    var action = context.ActionDescriptor as ControllerActionDescriptor; var permission = action.MethodI ...

  3. 老板,来几道web玩玩

    好久没做web了,没想到还能自己做出来555 [MRCTF2020]Ez_bypass 签到题8 给了源码,一个md5强类型比较,然后post传参,弱类型判断,直接1234567a绕过了 I put ...

  4. Gym102012A Rikka with Minimum Spanning Trees

    题意 \(T\) 组数据,每组数据给定一个 \(n\) 个点,\(m\) 条边,可能含有重边自环的图,求出最小生成树的个数与边权和的乘积,对 \(10^9+7\) 取模. \(\texttt{Data ...

  5. 利用VS2017制作软件安装包与卸载程序

    本博客讲述如何利用VS2017制作安装包以及相应的卸载程序,并解决过程中可能遇到的问题 一.制作安装程序 1.打开VS2017,新建项目,选择如下图所示程序: 新建成功后,会出现如下图所示目录: 2. ...

  6. spring cloud feign 添加headers

    原文地址: https://www.jianshu.com/p/dfec934b737f 很多时候我们需要feign的时候添加headers 1.把当前登录用户的token传到下一个服务 2.在自己的 ...

  7. GROUP BY 分组后得到最新即时间最大的一条数据(需添加limit才可生效)

    当使用GROUP BY 分组,默认返回的数据是组中最小的记录即id最小的数据, 当开发中经常会需要分组后将最新的数据放在前面, 为了实现需求,使用了嵌套查询,分别使用order by来排序 SELEC ...

  8. shell脚本实现---Zabbix5.0快速部署

    shell脚本实现---Zabbix5.0快速部署 zabbix-server快速安装脚本 #!/bin/bash #Zabbix-Server 5.0#author:sunli#mail:sunli ...

  9. Docker系列01—Docker 基础入门

    一.初识Docker和容器 1.1 什么是docker 容纳其他物品的工具,可以部分或完全封闭,被用于容纳.存储.运输物品.物体可以被放置在容器中,而容器则可以保护内容物. 容器? 容器就是在隔离的环 ...

  10. 《精通Spring4.x企业应用开发实战》第三章

    这一章节主要介绍SpringBoot的使用,也是学习的重点内容,之后就打算用SpringBoot来写后台,所以提前看一下还是很有必要的. 3.SpringBoot概况 3.1.1SpringBoot发 ...