I am again in the design phase of a very large project. The project context is to provide a new solution for the core services and core integration infrastructure around the prepaid platform on the largest telecommunication organisation in Greece. This is the most intrinsic motivation for me, define the essential architecture, spot the tricky points of requirements and provide a durable and efficient solution.
Two are the most common ways to become a very skilled enterprise software engineer/architect. The first is to work hard with such skilled people and the second is to read books that are really useful.
I present here a list of books that have really helped me to construct/design enterprise quality software. The order of books is meaningless.
Development
The Pragmatic Programmer: From Journeyman to Master
Authors: Andrew Hunt, David Thomas
π Java Concurrency in Practice
Java Concurrency in Practice
Authors: Brian Goetz with Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea
π Effective Java Programming Language Guide
Effective Java Programming Language Guide
Author: Joshua Bloch
π Effective Java 2nd Edition
Effective Java 2nd Edition
Author: Joshua Bloch
Integration
π Patterns of Enterprise Application Architecture
Patterns of Enterprise Application Architecture
Authors: Martin Fowler with Dave Rice, Matthew Foemmel, Edward Hieatt, Robert Mee, and Randy Stafford
π Enterprise Integration Patterns
Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions
Authors: Gregor Hohpe, Bobby Woolf
π Design Patterns: Elements of Reusable Object-Oriented Software
Design Patterns: Elements of Reusable Object-Oriented Software
Authors: Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
π Service-Oriented Architecture: Concepts Technology, and Design
Service-Oriented Architecture: Concepts, Technology, and Design
Author: Thomas Erl
(only a few chapters, which are really valuable)
π SOA Principles of Service Design
SOA Principles of Service Design
Author: Thomas Erl
(only a few chapters, which are really valuable)
General
The Mythical Man-Month
Author: Frederick Brooks
This is not a closed list, but contains most of the books that I really like (for now). I know that there are newer books, which are great too, and also new languages that are really very promising, but these are the books that really help me to become what I am.
What am I really??
Maybe the book that I read now may help you and me on this definition.
The book I read this period is this:
π Synthetic Overview of the Collaborative Economy
Synthetic Overview of the Collaborative Economy
Authors: Michel Bauwens and Franco Iacomella, Nicolas Mendoza, James Burke, Chris Pinchen, Antonin Leonard, Edwin Mootoosamy
I am a fan of Free Software and Open Source ideas. These ideas are not restricted only to software development, but to many areas out of software field (check Open Source Ecology).
I am not trying to advertise these books, or the authors or the publishers. I just respect theirs work and thatβs why I mention these books in this blog.
Reference: Invaluable books for an enterprise software engineer from our JCG partner Adrianos Dadis at the Java, Integration and the virtues of source blog.
Thank you!
We will contact you soon.
Adrianos DadisNovember 12th, 2012Last Updated: November 12th, 2012

This site uses Akismet to reduce spam. Learn how your comment data is processed.
Excellent books.. My personal favorites being Effective Java and Java Concurrency in practice.. Along with these I have also found Refactoring: Improving the design of existing code β Martin Fowler, Refactoring to Patterns β Joshua Kerievsky are invaluable, since refactoring is something we tend to do a lot in Agile projects.
Thanks for sharing the list.. :)