Must have tool, technologies & skills for a Java Developer
Upasana | December 23, 2017 | 1 min read | 3 views
Essential Tools for Java Developer
-
Java Development Kit (Java 8 or 9)
-
Git Distributed Version Control System
-
IntelliJ IDEA for Development Environment or Eclipse
-
Android Studio for Android Development
-
Atom or Notepad++ for misc editing tasks
-
Ubuntu/Centos/Windows OS
Trending Skills for Java Developer
-
Microservices Architecture Styles for Software Development
-
REST over HTTP communication
-
Algorithms and Datastructures
-
Concurrency and multithreading in Java
-
Familiarity with any Cloud (AWS, Azure, Heroku, etc)
-
NoSQL and SQL database knowledge (MySQL, MongoDB, DynamoDB, HBase, Apache Cassandra)
-
Familiarity with Text Search Libraries (Lucene, Solr, Elastic Search, etc)
-
Basic Knowledge of Jquery and javascript
-
Freemarker/Velocity Template Engine
-
Spring Framework/ Spring Boot
-
Basic understanding of Servlets
-
Jetty/Tomcat/Undertow or other servers
-
HTML 5
-
Firebug Firefox/ Chrome Developer Tools
Recommended Books
-
Head First Design Patterns in Java
-
Concurrency In Practice by Brian Goetz
-
Effective Java 2nd Edition by Joshua Bloch
-
Algorithms 4th edition : http://algs4.cs.princeton.edu/home/
Technology Forums
Tutorials Articles
-
Few articles on Java 6 at IBM website - http://www.ibm.com/developerworks/views/java/libraryview.jsp?search_by=5+things+you+did
-
Concurrency In Practice by Brian Goetz - http://www.briangoetz.com/pubs.html
-
Java Articles : http://www.oracle.com/technetwork/articles/java/index.html
-
Java SE Tutorial : http://docs.oracle.com/javase/tutorial/index.html
-
Java 8 docs: http://docs.oracle.com/javase/8/docs/
Video Tutorials
Top articles in this category:
- Citibank Java developer interview questions
- Multi-threading Java Interview Questions for Investment Bank
- SQL - Write a query to find customers who have no orders yet
- Sapient Global Market Java Interview Questions and Coding Exercise
- UBS Java Interview Questions
- Cracking core java interviews - question bank
- What are the key principles for designing a scalable software?