12 Advanced Java programming books for Experienced developers - Part 2

This is the second part of 12 must read advance Java programming books for intermediate and experienced Java programmers. In the first part, I have shared books to learn and master concurrency, performance, design patterns, and Java collection framework. In this part, I will talk about more advanced concepts e.g. security, Java 8, best practices etc. As an experienced Java developer, a lot is expected from you. Junior developers look at you for guidance and project managers look at you to solve problems and bail them out at key junctures. If you don't have solid knowledge of the various aspect of software development, testing, deployment, and documentation, you won't be able to do your job properly and rise in your career.
Since there is no other option than constant learning to be relevant in this competitive world, books play an important part in being relevant and enhancing your experience. Even though I have read so many Java books, I still search for good ones which I haven't read. I try to read some books, again and again, e.g. Effective Java, which I have found interesting in first reading or scanning to learn more and this is true with many experienced Java developers.

I started this series to help and guide experienced Java programmers i.e. programmers who have been involved in Java development, be it core Java or java web development, for more than 3 years. First two years you are treated as beginners but after that people start expecting from you.

a programmer is not just isolated to Java but also have to learn and know other key technologies like SQL, UNIX, XML, Testing, Source Control, Agile, Project Management, I am thinking to expand the series beyond Java books, but only if you guys found it useful. So, let's start with 4 more books for experienced Java developers.

Iron Clad Java
Good knowledge of Security is one of the strengths of an experienced Java developer, particularly a Java web developer. The title, "Iron Clad Java: Building Secure Web Applications" speak for itself, i.e. this book will teach you how to write a secure web application using Java technologies e.g. JSP, Servlet, and Java EE. You will not only learn about common security vulnerabilities like SQL Injection, Cross-site scripting (XSS), Cross-site request forgery (CSRF), Denial of Service (DOS) attack but also learn about patterns and anti-patterns of secure Java applications.

Best Java Security books for experienced

The book also teaches you about libraries you can use to address common security concerns e.g. you can use PreparedStatement to deal with SQL injection. The book also has a chapter on logging because stack trace is one of the most common ways of knowing application detail e.g. which version of Apache your application is running, which database it is using etc. Logging without considering security aspect present great security concern and many penetration tester checks that bit first.

If you are new to web application development then this book will give you the vocabulary to talk about security and even if you think you know about Security in Java web application, I am sure you will learn something new here. It's not only a great book for experienced Java developer but also for penetration and security tester.

Key Java: Advanced tips and techniques
The "Key Java" is one of those books which you would love to read, small size, lots of content which you can use in real world application and vast coverage. If you want to get yourself familiar with key Java concepts without going into extreme details, this is the book you should read. This book covers all essential topic which any experienced Java programmer should know e.g. networking, security, database connectivity, MVC frameworks etc. You won't become an expert by reading just this book but you will learn enough to work on projects which use these technologies. You will learn where you can find more information if you need. In short, a book which will not make you master of one but the jack of all for sure.

Best Java book for experienced developers

Effective Java
This is in all probability the most recommended book to Java programmers. It is the book, which will change how you write and read Java. The book is written by Joshua Bloch, one of the most famous people in Java world and author of several key classes in JDK including Java collection framework. The book is a first-hand account of several API decision he has made while writing those key classes. As the name suggests, it teaches you how to use Java effectively. It not only gives you information but also teaches you how to use that information. I learned many useful idioms from this book and have read it almost 5 to 6 times since I first discovered it. In short, a must read books for any experienced Java programmer.

Java Books for senior developers

Java 8 in Action
In 2017, you cannot be an experienced Java programmer if you are not familiar with Java 8. In the last couple of years, Java 8 has established its credibility and usefulness and many companies have already switched to Java 8 for development. As an experienced developer, it's expected from you to know all about Java 8 e.g. lambda expression, stream API, new Date and Time API and motivation behind new language changes made in Java e.g. default methods. The Java 8 in Action singlehandedly provide all these knowledge to you. Though, I have told you before that it's difficult to learn everything about Java 8 by just reading one book and suggests a couple of books here, sometimes it's not practical to read too many books. Hence, if you decide to read just one book on Java 8, you should read "Java 8 in Action"

advanced Java programming books for Experienced developers

That's all in the second part of advanced Java programming books for Experienced developers. In the first part, we have seen books on Java performance, concurrency, design patterns, and Collection framework and in this part, I have shared books on Java Security, Java 8, Java coding practice and a book to get a good overview of key Java features. If you guys will like this series, I will continue to post the 3rd part of this series in which I will discuss remaining topics e.g. networking, object-oriented analysis and design, testing, UML, and popular Java frameworks like Spring, Hibernate, iBatis etc.

Further Learning
Complete Java Masterclass
Java Fundamentals: The Java Language
Java In-Depth: Become a Complete Java Engineer!

Other Recommended books for Java Developers

Thanks for reading this article, if you like this one the please share with your friends and colleagues. If you have any suggestion, feedback or you want to share some good books you have read on Java then please drop a comment.

1 comment: