从生存、制胜、发展三个方面入手,为大家展示出程序员求职与工作的一幅3D全景图像。本书中既有在公司中的生存技巧,又有高手达人的进阶策略,既有求职攻略的按图索骥,又有入职后生产环境的破解揭秘。
  书中浓缩了程序员求职与工作、生存与发展的点滴经验,希望本书能够成为你的朋友。望本书能让即将走向工作岗位的程序员和已经成为程序员的朋友,对工作和软件行业做到既“知己”又“知彼”,在入职前对职业状况清楚了解,入职后对职业方向清晰认识,使大家的工作更加得心应手,更加轻松愉快。
 
相关截图:
 
 
图书目录:
第一篇 生存法则 
 第1章 知己知彼,百战不殆 
  1.1 问题1:这个职业赚钱吗?赚多少钱 
   1.1.1 修炼第一层境界:剑指四方,试问天下谁与争锋 
   1.1.2 修炼第二层境界:世界如此之大,要学的东西很多 
   1.1.3 修炼第三层境界:最深即最浅,最浅即最深,不过如此 
   1.1.4 点评“修炼三层境界” 
   1.1.5 回答这个问题 
  1.2 问题2:大学毕业生找不到职业入口 
   1.2.1 工作经验都是什么经验 
   1.2.2 他们为什么面试的时候这么问? 
   1.2.3 程序员的笔试 
   1.2.4 回答这个问题 
  1.3 问题3:跨行业真的这么难吗? 
   1.3.1 跨行业最难的是什么 
   1.3.2 跨行业的入口——原来从事行业的业务知识 
   1.3.3 农民造出了飞机,为什么他还是农民 
   1.3.4 回答这个问题 
  1.4 秘诀:经营自己的优势 
   1.4.1 善于发掘和积累自己的优势 
   1.4.2 善于展示与利用自己的优势 
  1.5 点评“经营自我” 
 第2章 软件开发职业的误区 
  2.1 误区1:软件开发职业是青春饭 
   2.1.1 不必为30岁以后烦恼 
   2.1.2 岁以后照样可以编程序 
   2.1.3 多岁的程序员多的是 
   2.1.4 点评“青春饭” 
  2.2 误区2:做软件开发必须要加班熬夜的工作 
   2.2.1 程序员们熬夜工作的借口 
   2.2.2 常态加班的危害 
   2.2.3 控制好工作的一日时间表才是关键 
   2.2.4 “偏执与狂热”不等于加班加点 
   2.2.5 程序员的大脑与第二大脑 
   2.2.6 点评“加班熬夜” 
  2.3 误区3:开发一个软件产品一定是集团作战 
   2.3.1 几百人的公司其他人都在干什么 
   2.3.2 需要较全的人员配置的项目 
   2.3.3 坚信,只要是“人”做到的我就能做到 
   2.3.4 点评“集团作战” 
  2.4 误区4:程序员不是一般人 
   2.4.1 程序员的与众不同与平凡 
   2.4.2 程序员们就是一般人 
   2.4.3 点评“一般人” 
  2.5 误区5:存在“软件蓝领”岗位 
   2.5.1 “软件蓝领”是个“美梦” 
   2.5.2 “让程序员放弃思考?”是个“噩梦” 
   2.5.3 软件开发流程“理想”的“不理想” 
   2.5.4 “软件蓝领概念”忽略的东西 
   2.5.5 现实中的软件开发团队 
   2.5.6 点评“拧螺丝” 
  2.6 关于误区 
 第3章 程序员的“菜鸟心态综合症” 
  3.1 症状1:指望着公司里有一个老师 
   3.1.1 临床表现 
   3.1.2 治疗1:弄明白她为什么辞职 
   3.1.3 治疗2:理解公司的本质是什么 
   3.1.4 治疗3:要搞清楚你的主管是你的老板,他绝对不是你的老师 
  3.2 症状2:不知道怎么让自己前进 
   3.2.1 临床表现 
   3.2.2 治疗1:你只管低着头上山,暂时不要向山上看 
   3.2.3 治疗2:明知山有虎,偏向虎山行 
   3.2.4 治疗3:没有过不去的火焰山 
   3.2.5 治疗4:虚心使人进步,骄傲自满要不得 
  3.3 症状3:想做圈养的羊,不想做野生的狼 
   3.3.1 临床表现 
   3.3.2 治疗1:理解“丛林法则”生存的法则 
   3.3.3 治疗2:向掠食动物学习如何生存 
  3.4 症状4:缺乏自信,总对自己说No 
   3.4.1 临床表现 
   3.4.2 治疗1:生活取决于自己 
   3.4.3 治疗2:找到通往高楼的那扇门 
     3.4.4 治疗3:逐个排除你恐惧的理由 
  3.5 症状5:缺少幸福感,内心总在跳跃 
   3.5.1 临床表现 
   3.5.2 治疗1:比一比到底谁最幸福 
   3.5.3 治疗2:要努力进取也要找到幸福的理由 
  3.6 症状6:困兽心态,焦躁与不安 
   3.6.1 临床表现 
   3.6.2 治疗1:像猴子一样生活 
   3.6.3 治疗2:多和团队成员沟通 
  3.7 症状7:缺少感激心,心存感激让你受益匪浅 
   3.7.1 临床表现 
   3.7.2 治疗1:心存感激不等于低人一等 
   3.7.3 治疗2:首先应该对你的领导心存感激 
   3.7.4 真心换真心 
  3.8 症状8:不知道什么是“团队合作” 
   3.8.1 临床表现 
   3.8.2 治疗1:分析在公司上班的三个目标 
   3.8.3 治疗2:团队合作——就是团队主管的目标 
  3.9 点评“心态” 
 第4章 换位思考,项目主管的招聘技巧 
  4.1 招聘就像大海捞针 
  4.2 技巧1:是否有独立完成项目的经验 
   4.2.1 独立完成一个项目的经验是什么经验 
   4.2.2 没有独立生存的能力不能有最佳团队合作 
   4.2.3 测试手段 
   4.2.4 锻炼攻略:需要主动寻找独立工作的机会 
  4.3 技巧2:是否有独立解决问题的能力 
   4.3.1 见招拆招的能力 
   4.3.2 程序员的韧性 
   4.3.3 测试手段 
   4.3.4 锻炼攻略:训练创意思维 
  4.4 技巧3:评价程序员的思考方式 
   4.4.1 一切皆程序 
   4.4.2 找到规律 
   4.4.3 锻炼攻略:抓住中心把复杂的事情变简单 
  4.5 点评“换位思考” 
 第5章 程序员,保持你前进的步伐 
  5.1 程序员前进的四个阶段 
   5.1.1 第一阶段,找到一个编程语言去入门 
   5.1.2 第二阶段,用所这门语言去分析和推理 
   5.1.3 第三个阶段,新知识新技术的积累 
   5.1.4 第四个阶段,大道无形 
  5.2 学习与积累 
   5.2.1 找到好书,相当于找到一个好老师 
   5.2.2 每本书都没有从头看到尾是不是等于不用功? 
   5.2.3 学会建立沉淀目录 
第二卷 制胜法宝 
 第6章 Java程序员的七种武器 
  6.1 武器1:编程IDE开发工具 
   6.1.1 Team Leader的嗜好 
   6.1.2 什么功能是程序员最需要的 
   6.1.3 下面这些IDE你都用得到 
   6.1.4 点评“开发工具” 
  6.2 武器2:数据库系统 
   6.2.1 广告与市场的力量 
   6.2.2 不要盲目选择数据库,根据用途选择合适的数据库 
   6.2.3 以下这些数据库绝不能仅仅是“眼熟” 
   6.2.4 研究一下JDBC源程序 
   6.2.5 不熟悉数据库就会“绕远” 
   6.2.6 点评“真相” 
  6.3 武器3:Web服务器软件 
   6.3.1 Web服务器是如何工作的 
   6.3.2 支持JSP的Web服务器的原理 
   6.3.3 常用的WebServer 
   6.3.4 研究一下Web Server的源程序 
   6.3.5 点评“深入研究” 
  6.4 武器4:操作系统 
   6.4.1 让我们看看这个招聘启事 
   6.4.2 Java程序员为什么需要研究操作系统 
   6.4.3 我们应该更关心操作系统的哪些方面 
   6.4.4 哪些操作系统我们要重点关注 
   6.4.5 点评“Linux” 
  6.5 武器5:编程语言 
   6.5.1 Java程序员只会Java语言行吗 
   6.5.2 各个编程语言的特长 
   6.5.3 点评“第二门语言” 
  6.6 武器6:辅助设计工具 
   6.6.1 UML图设计工具 
   6.6.2 常用UML设计工具 
   6.6.3 UML要“灵活”的掌握 
  6.7 武器7:版本控制工具 
   6.7.1 工作原理 
   6.7.2 常用版本控制工具 
   6.7.3 融入团队的开发氛围 
  6.8 点评“武器” 
 第7章 破除Java开发中的封建迷信 
  7.1 迷信1:Java占内存到底大不大 
   7.1.1 测试一:让程序去裸奔 
   7.1.2 测试二:针尖对麦芒 
   7.1.3 让人不再“迷信”的测试结果 
    7.1.4 先天与后天 
  7.2 迷信2:Java和C到底谁快 
   7.2.1 测试一:让程序转起来 
   7.2.2 测试二:读取个大文件吧 
   7.2.3 测试三:内存处理的速度 
   7.2.4 测试结果分析 
   7.2.5 也不要过于迷信C语言 
   7.2.6 Java语言与C语言之间的应用比较 
  7.3 迷信3:Java就等于JSP吗 
   7.3.1 一个面试的现象 
   7.3.2 JSP开发时间长了的误解 
   7.3.3 Java的纯真年代 
   7.3.4 Java绝对不等于JSP 
   7.3.5 努力保持一个纯真的心态 
   7.3.6 点评“纯真” 
  7.4 迷信5:C/S与B/S相比一无是处 
   7.4.1 B/S是一个很好的创意 
   7.4.2 B/S程序本身也是一个C/S程序 
   7.4.3 C/S程序的优势——速度 
   7.4.4 C/S程序的应用领域 
  7.5 迷信6:J2EE的开发必须用EJB 
   7.5.1 EJB真人真事 
   7.5.2 我们不禁要问,什么是“服务集群”?什么是“企业级开发”? 
   7.5.3 把EJB掰开了揉碎了 
   7.5.4 EJB的最底层究竟是什么 
   7.5.5 EJB中所谓的“服务群集” 
   7.5.6 这种部署难道是无懈可击 
   7.5.7 EJB活学活用,J2EE不是必须使用EJB 
   7.5.8 “技术”不是神,不要动不动就“崇拜” 
  7.6 点评“迷信” 
 第8章 揭秘中大型应用系统 
  8.1 何谓“中大型应用系统”? 
  8.2 无法学习与模拟 
  8.3 资深程序员的“经验” 
  8.4 为什么要熟悉系统的运行环境 
  8.5 带你进机房里去看看硬件设备 
   8.5.1 机房的基本情况 
   8.5.2 U的概念 
   8.5.3 机房中的设备 
   8.5.4 在机房里发现了什么 
  8.6 安全与效率——永恒的主题 
   8.6.1 绝对安全是不存在的 
   8.6.2 RAID 
   8.6.3 负载均衡 
   8.6.4 双机、集群的配置模式 
   8.6.5 网络流量与速率 
   8.6.6 带宽 
  8.7 一个软硬件部署方案实例 
  8.8 点评“经验” 
 第9章 为什么要学习用框架开发 
  9.1 学习框架是因为它“火” 
  9.2 使用框架开发的好处 
   9.2.1 框架的目的是简化编程工作 
   9.2.2 框架是一个应用程序的半成品 
   9.2.3 框架的好处是代码重用 
  9.3 框架不仅仅只有“SSH” 
   9.3.1 WebWork 
   9.3.2 EasyJWeb 
   9.3.3 Click 
   9.3.4 JBlooming 
  9.4 用框架的思想去“自由思考” 
  9.5 自己也可以试着做一个 
   9.5.1 先看看不用框架怎么编写程序 
   9.5.2 从应用程序中找到共性的东西 
   9.5.3 我们试着做一个最简单的框架 
   9.5.4 有了这个框架开发工作被简化 
  9.6 点评“自由思考” 
第三卷 达人策略 
 第10章 高手有多高菜鸟有多菜 
  10.1 五年工作经验的“菜鸟” 
  10.2 高手是怎样炼成的 
   10.2.1 修炼1:Java悟道 
   10.2.2 修炼2:关注程序的品质 
   10.2.3 修炼3:“技术”与“技巧”都很重要 
   10.2.4 修炼4:走入Java的底层程序开发 
   10.2.5 修炼5:从Worker到Maker 
  10.3 点评“高手有多高,菜鸟有多菜” 
 第11章 控制内存的功力 
  11.1 别指望Java和内存无关 
  11.2 容易被搞晕的——堆和栈 
   11.2.1 堆——用new建立,垃圾自动回收负责回收 
   11.2.2 栈——存放基本数类型,速度快 
   11.2.3 何谓栈的“数据共享” 
   11.2.4 实例化对象的两种方法 
  11.3 内存控制心中有数 
   11.3.1 两个读取内存信息函数 
   11.3.2 开发Java程序内存看的见 
   11.3.3 必须要介绍的虚拟机的参数“-Xmx” 
  11.4 内存控制效率优化的启示 
   11.4.1 启示1:String和StringBuffer的不同之处 
   11.4.2 启示2:用“-Xmx”参数来提高内存可控制量 
   11.4.3 启示3:二维数组比一维数组占用更多内存空间 
   11.4.4 启示4:用HashMap提高内存查询速度 
   11.4.5 启示5:用“arrayCopy()”提高数组截取速度 
  11.5 内存垃圾回收问题 
   11.5.1 什么是内存垃圾,哪些内存符合垃圾的标准 
   11.5.2 JVM垃圾回收的相关知识 
  11.6 点评“功力” 
 第12章 产品和项目是程序员永恒的主题 
  12.1 项目和产品
   12.1.1 “产品”的定义 
   12.1.2 “项目”的定义 
   12.1.3 “产品”和“项目”的区别 
  12.2 软件产品开发是“艺术” 
   12.2.1 软件产品开发需要灵感 
   12.2.2 程序作品是你的一个传世的艺术作品 
   12.2.3 软件产品开发需要“前瞻性” 
  12.3 软件项目开发是“军事行动” 
   12.3.1 开发者就是这个程序的“三军统帅” 
   12.3.2 “项目”开发需要“运筹帷幄” 
   12.3.3 项目控制,一艘船的故事 
   12.3.4 点评“军事行动” 
 第13章 非技术知识对工作的辅助 
  13.1 辅助1:“英语”不需要专业,因为它只是工具 
   13.1.1 英语与编程序无关 
   13.1.2 用英语可以看一些英文文档 
   13.1.3 掌握基本的工作交流时的英语词汇 
  13.2 辅助2:“Google”不是万能的,但不会用万万不能 
   13.2.1 在网页标题中搜索关键字:intitle 
   13.2.2 在特定站点中搜索关键字:site 
   13.2.3 在url链接中搜索关键字:inurl 
   13.2.4 精确匹配搜索:双引号 
   13.2.5 搜索结果中不希望含某特定查询词:减号 
  13.3 辅助3:程序员的常用文档写作 
   13.3.1 程序员在软件开发过程中需要提交的文档 
   13.3.2 程序员在日常工作中需要提交的文档 
  13.4 点评“非技术”

3---------------------- 

Java程序员的更多相关文章

  1. [转载]一个标准java程序员的进阶过程

    第一阶段:Java程序员 技术名称 内                 容 说明 Java语法基础 基本语法.数组.类.继承.多态.抽象类.接口.object对象.常用类(Math\Arrarys\S ...

  2. Java程序员应该了解的10个面向对象设计原则

    面向对象设计原则: 是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心,但大多数Java程序员追逐像Singleton.Decorat ...

  3. To Java程序员:切勿用普通for循环遍历LinkedList

    ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...

  4. Java 程序员们值得一看的好书推荐

    "学习的最好途径就是看书",这是我自己学习并且小有了一定的积累之后的第一体会.个人认为看书有两点好处: 能出版出来的书一定是经过反复的思考.雕琢和审核的,因此从专业性的角度来说,一 ...

  5. Java程序员应该掌握的10项技能

    这篇文章主要介绍了作为Java程序员应该掌握的10项技能,包括java的知识点与相关的技能,对于java的学习有不错的参考借鉴价值,需要的朋友可以参考下   1.语法:必须比较熟悉,在写代码的时候ID ...

  6. Java程序员岗位

    Java程序员岗位面试题有哪些?   1.面向对象的特征有哪些方面(1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择 ...

  7. Java程序员学习之路

    1. Java语言基础 谈到Java语 言基础学习的书籍,大家肯定会推荐Bruce Eckel的<Thinking in Java>.它是一本写的相当深刻的技术书籍,Java语言基础部分基 ...

  8. 分享下对JAVA程序员成长之路的总结<转>

    我也搞了几年JAVA了,由于一向懒惰,没有成为大牛,只是一普通程序猿,手痒来给新人分享下从新手成长为老鸟的已见.   首先初识语法的阶段,必须要学会怎么操作对象,操作if和for,操作list set ...

  9. 从小工到专家 ——读《Java程序员职场全攻略》有感

    从小工到专家 ——读<Java程序员职场全攻略>有感   <Java程序员职场全攻略>是以故事的形式,向读者介绍Java程序员的职场经验.作者牛开复在北京从事软件开发,已经是一 ...

随机推荐

  1. FLUSH TABLE WITH READ LOCK详解

    FLUSH TABLES WITH READ LOCK简称(FTWRL),该命令主要用于备份工具获取一致性备份(数据与binlog位点匹配).由于FTWRL总共需要持有两把全局的MDL锁,并且还需要关 ...

  2. MySQL数据库

    1.1 数据库的发展史 1.1.1 萌芽阶段--文件系统 文件系统 1.1.2 第一代数据库--层次模型.网状模型 1.1.2.1层次模型 这是一种导航结构,导航结构的优点:分类管理:导航结构的缺点: ...

  3. mysql-Federated存储方式,远程表,相当于sql server的linked server

    MySQL中针对不同的功能需求提供了不同的存储引擎.所谓的存储引擎也就是MySQL下特定接口的具体实现. FEDERATED是其中一个专门针对远程数据库的实现.一般情况下在本地数据库中建表会在数据库目 ...

  4. hadoop伪分布式平台搭建(centos 6.3)

    最近要写一个数据量较大的程序,所以想搭建一个hbase平台试试.搭建hbase伪分布式平台,需要先搭建hadoop平台.本文主要介绍伪分布式平台搭建过程. 目录: 一.前言 二.环境搭建 三.命令测试 ...

  5. 在macOS Sierra 10.12搭建PHP开发环境

    macOS Sierra 11.12 已经帮我们预装了 Ruby.PHP(5.6).Perl.Python 等常用的脚本语言,以及 Apache HTTP 服务器.由于 nginx 既能作为 HTTP ...

  6. 用keytool工具生成签名文件与获取摘要信息

    在Command命命令行模式下: 转到工作目录 执行下面命令: keytool -genkey -v -keystore debug.keystore 最后是生成的文件名,执行该命令后有很多内容要填写 ...

  7. sql server全文索引使用中的小坑

    一.业务场景 我们在实际生产环境中遇到了这样一种需求,即需要检索一个父子关系的子树数据 估计大家也遇到过类似的场景,最典型的就是省市数据,其中path字段是按层级关系生成的行政区路径: 如果我们已知某 ...

  8. Git版本控制常用命令整理

    基础命令: git init  初始化一个空仓库 git add 添加已经修改的工作区文件 git add newmodifiedfile git commit -m "log conten ...

  9. [diango]批量导入不重复数据

    去年研究导入数据的时候写了一个批量导入数据的脚本,但有个问题,如果导入这批数据在数据库中已经存在,那么我们导入的数据不就重复了么,本文就讨论如何解决这个问题? 程序如下: #coding:utf-8 ...

  10. Java Generics and Collections-2.1

    2.1 子类化以及替换原理 为什么List<Integer> 不是List<Number> 的子类? 首先看下面的代码,这段代码是编译不过的 package java_gene ...