Java Software Engineer Skill Map
# Java Software Engineer Skill Map
## Basic
### Core Java
- Java The Complete Reference Ninth Edition.pdf
* Core
+ Basic Language Characteristics
- Data Types
- Syntax
- Control Flow
+ Object-Oriented
- Class
- Object
- Method
- Interface
- Inheritance
+ Miscellaneous
- Generics
- Autoboxing
- Enumerations
- Annotations
+ Parallelism
- Multithreaded Programming
+ Functional Programming
- Lambda Expression
- Stream API
* Commonly-used Libraries
+ String Handling
- java.lang.String
- StringBuffer and StringBuilder
- Regular Expression
+ java.lang.*
+ java.util.*
- Collections Framework
- Concurrency Framework
- i18n or g11n
* Currency
* Data & Time
* Language Locale
- Miscellaneous Utilities
+ java.io.*
+ java.nio.*
+ java.net.*
+ java.rmi.*
+ java.sql.*
+ javax.sql.*
### Algorithms & Data Structure
- Algorithms *
* https://www.coursera.org/learn/java-data-structures-algorithms-2
* https://www.coursera.org/learn/introduction-to-algorithms
- Data Structures *
* https://en.wikipedia.org/wiki/List_of_data_structures
* http://www.tutorialspoint.com/data_structures_algorithms/
- Object Oriented Programming *
* head_first_design_patterns.pdf
* Effective Java 2nd Edition.pdf
- Computer Architecture
* Memory Hierarchy
* Parallelism
* Multiprocessor Systems
- Operating System
* Memory Management
* MemProcess Management
* MemFile System *
- Computer Network
* OSI Model
* TCP/IP
* HTTP / HTTPS
* HTTP 1.X / HTTP 2
### Essentials
- Linux/Unix
* Shell commands (bash) (http://linuxcommand.org/index.php)
+ Text Processing
- AWK / SED
+ File Operation
- cd/ls/find/ (Pipe and I/O Redirection)
* VIM / Emacs ( Either of them)
* Shell Script(bash)
- Java Commonly-used 3rd-party Libraries
* Logging
+ log4j
+ slf4j
+ logback
* Unit Test
+ Junit
+ Mockito
+ TestNG
* Code Coverage
+ jacoco
+ Clover
+ EMMA
* Apache Commons
+ commons-io
+ commons-lang
+ commons-math
+ commons-codec
+ commons-collections
+ commons-beanutils
+ commons-logging
+ ...
* Apache HttpComponents
* Google Guava
- Software Engineering
* Project Organization
+ Maven
+ Gradle
+ Ant + Ivy (Optional)
* Versioning
+ git
+ svn
* UML
### Front-end (Web)
- Web Development (http://www.w3schools.com)
* HTML
+ HTML4
+ xhtml
+ HTML5
* css
+ css2
+ CSS3
* Data Representation
+ XML
+ JSON
+ JSONP
* Javascript
+ ECMAScript 6
+ Basics (https://developer.mozilla.org/en-US/docs/Web/JavaScript)
+ Ajax
+ AngularJS (plus)
+ JQuery (plus)
* TypeScript
* Responsive Web Page development (plus)
### Back-end Development(Server side)
- JavaEE
* JSP *
* JSTL
* Java Servlet *
* JavaServer Faces *
* JPA *
* JTA *
* JAX-RS *
* Managed Beans / CDI 1.1/ DI /IOC
* Bean Validation
* JAX-WS
* JavaMail
* JACC
* JASPIC
* Java WebSocket
* Java JSON Processing
* Concurrency Utilities for JavaEE
* Batch processing framework
- Java Containers
* Tomcat / TomEE
* GlassFish
* Jetty
- Java mid-ware
* Spring
+ Spring-Framework (Dependency Injection & AOP)
+ Spring-Web
+ Spring-Data
+ Spring-security
+ Spring-boot (Micro-service Architecture)
* Struts(MVC)
* SpringMVC
* Hibernate/JPA (Data Persistency)
* MyBatis
- Java Performance Tuning
* java performance the definitive guide.pdf
- Database
* MySQL
* SqlServer
* Oracle
* Nosql
+ Memcache
+ Redis
+ MongoDB
+ Neo4j
- Serialization
* Google protobuf
* Apache Avro
- Java RPC
* Apache Thrift
* Motan
- MessageQueue
* AMQP - RabbitMQ
* Apache ActiveMQ
* Apache Kafka
- Messaging
* XMPP
- Searching/Indexing
* Apache Lucene
* Apache Solr
* Elasticsearch
* CoreNLP
- Big Data(Optional)
* Hadoop
+ Yarn (MapReduce)
+ HDFS
+ HBase
+ Hive
+ Mahout
* Spark
+ Spark-Core
+ Spark-SQL
+ Spark-machine learning
+ Spark Streaming
* Apache Storm
- Cloud
* Scalable Architecture
+ VM
- OpenStack
+ Container
- Docker
* Hands-on
+ Amazon AWS
- EC2
- S3
- DynamoDB
- JVM-based Programming Language
* Scala
* Groovy
* Clojure
* Kotlin
* http://www.oracle.com/technetwork/articles/java/architect-languages-2266279.html
### IDE
- IntelliJ IDEA
- NetBeans
- Eclipse
### Typical Java Applications
- Online Chatting (Web/Desktop System)
- Library Management System (Web System)
- Ticket Booking System(RESTful Web Service)
- HTTP File Downloader (Console / Desktop)
- P2P File Sharing (Console / Desktop)
- Blogging System (Web / REST)
- RDBMS UI Toolkit (Web /Desktop)
### Desktop Development
- awt
- Applet
- swing
- Netbeans Platform
- JavaFX
- swt
### Mobile Development
- Android
- JavaME
Java Software Engineer Skill Map的更多相关文章
- 2018阿里-研发工程师JAVA Software Engineer, Java
岗位描述Job Description如果你想了解JAVA开发在阿里巴巴互联网生态系统中无与伦比的应用广度与深度: 如果你对基础技术感兴趣,你可以参与基础软件的设计.开发和维护,如分布式文件系统.缓存 ...
- software engineer's resume(帮助你写程序员简历)
关键词 参考 简历模板 参考 下面开始是正文(关键词原文) 介绍 本项目由海外兔 (https://osjobs.net) 维护,海外兔团队由一线互联网面试官组成,提供海内外公司一对一入职套餐以及算法 ...
- Software Engineer
1, 软件工程师 软件工程师英文是Software Engineer,是从事软件职业的人员的一种职业能力的认证,通过它说明具备了工程师的资格.软件工程师是从事软件开发相关工作的人员的统称. 它是一个广 ...
- 微软职位内部推荐-Software Engineer II-Web app
微软近期Open的职位: The Office App Services team is working on the powerful Office Web Apps including Word ...
- 微软职位内部推荐-Senior Software Engineer -Web
微软近期Open的职位: Location: Beijing, China The Office App Services team is working on the powerful Office ...
- Software Engineer Title Ladder
http://changelog.ca/log/2013/08/09/software_engineer_title_ladder Within the software engineering pr ...
- Sr Software Engineer - Big Data Team
Sr Software Engineer - Big Data Team About UberWe’re changing the way people think about transport ...
- Security Software Engineer
Security Software Engineer Are you excited to be part of the VR revolution and work on cutting edge ...
- 微软职位内部推荐-Software Engineer II-Senior Software Engineer for Satori
微软近期Open的职位: Title: Software Engineer II-Senior Software Engineer for Satori, STC Location: Beijing ...
随机推荐
- 一片关于Bootstarp4的文章
一.Bootstarp Bootstrap 是全球最受欢迎的前端组件库,用于开发响应式布局.移动设备优先的 WEB 项目.可以让你快速的排版,不用在写那些繁杂的样式.Bootstrap是开源免费的,设 ...
- python中的open()函数
定义: python open() 函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写 参数: 模式 描述 r 以只读方式打开文件.文件的指针将会放在文件的开头.这是默认模 ...
- 使用mysql应该注意的细节
一.表及字段的命名规范 1.可读性原则 使用大写和小写来格式化的库对象名字以获得良好的可读性. 例如:使用CustAdress而不是custaddress来提高可读性.(这里注意有些DBMS系统对表名 ...
- slideshare原本是一个专业的幻灯片存储与展示的网站
slideshare就是其中一个.slideshare原本是一个专业的幻灯片存储与展示的网站,它支持扩展名为ppt.pps和odp三种格式的幻灯片,用户上传成功以后slideshare会提供给用户一个 ...
- vue filters 金额转中文大写
capitalAmount(amount: any) { // 汉字的数字 const cnNums = ["零", "壹 ...
- leetcode-解题记录 884. 两句话中的不常见单词
题目 给定两个句子 A 和 B . (句子是一串由空格分隔的单词.每个单词仅由小写字母组成.) 如果一个单词在其中一个句子中只出现一次,在另一个句子中却没有出现,那么这个单词就是不常见的. 返回所有不 ...
- Php 单元测试 phpunit && codecept
Php 单元测试 phpunit && codecept phpunit: Windows版本 整体上说,在 Windows 下安装 PHAR 和手工在 Windows 下安装 Com ...
- PHP-Redis扩展安装(四)
PHP-Redis扩展安装(四) 安装环境链接:http://pan.baidu.com/s/1i4IbJox Memecached 服务器安装(一) memcached php扩展(二) redis ...
- USACO 6.4 章节
The Primes 题目大意 5*5矩阵,给定左上角 要所有行,列,从左向右看对角线为质数,没有前导零,且这些质数数位和相等(题目给和) 按字典序输出所有方案... 题解 看上去就是个 无脑暴搜 题 ...
- VB - 错误处理
1.最常见的错误是运行时错误,也就是说错误在脚本正在运行的时候发生,是脚本试图进行非法操作的结果.例如零被作为除数.在vbs中,任何运行时错误都是致命的,此时,脚本将停止运行,并在屏幕上显示一个错误消 ...