Java Programming Interviews Exposed
Buy Rights Online Buy Rights

Rights Contact Login For More Details

More About This Title Java Programming Interviews Exposed

English

If you are a skilled Java programmer but are concerned about the Java coding interview process, this real-world guide can help you land your next position

Java is a popular and powerful language that is a virtual requirement for businesses making use of IT in their daily operations. For Java programmers, this reality offers job security and a wealth of employment opportunities. But that perfect Java coding job won't be available if you can't ace the interview. If you are a Java programmer concerned about interviewing, Java Programming Interviews Exposed is a great resource to prepare for your next opportunity. Author Noel Markham is both an experienced Java developer and interviewer, and has loaded his book with real examples from interviews he has conducted.

  • Review over 150 real-world Java interview questions you are likely to encounter
  • Prepare for personality-based interviews as well as highly technical interviews
  • Explore related topics, such as middleware frameworks and server technologies
  • Make use of chapters individually for topic-specific help
  • Use the appendix for tips on Scala and Groovy, two other languages that run on JVMs

Veterans of the IT employment space know that interviewing for a Java programming position isn't as simple as sitting down and answering questions. The technical coding portion of the interview can be akin to a difficult puzzle or an interrogation. With Java Programming Interviews Exposed, skilled Java coders can prepare themselves for this daunting process and better arm themselves with the knowledge and interviewing skills necessary to succeed.

English

Noel Markham is an experienced interviewer and Java developer with experience across technology, financial, and gaming industries. Most recently he has been working in startups for social gaming and digital entertainment. He has hosted interviews for developers of all experience levels, from recent graduates to technical leaders.

English

Introduction xi

Part I: Navigating the Interview Process

Chapter 1: Dissecting Interview Types 3

Looking at the Phone Screening Process 4

Reviewing Technical Tests 5

Handling Face-to-Face Interviews 7

Making the Decision 8

Summary 9

Chapter 2: Writing a Noticeable Resume 11

How to Write a Resume and Cover Letter 11

Writing a Cover Letter 14

Summary 15

Chapter 3: Technical Test and Interview Basics 17

Technical Written Tests 17

At-Computer Tests 18

Face-to-Face Technical Interviews 19

Summary 21

Chapter 4: Writing Core Algorithms 23

Looking at Big O Notation 23

Sorting Lists 24

Searching Lists 32

Summary 33

Chapter 5: Data Structures 35

Lists 35

The Relationship between Arrays and Lists 36

Trees 39

Maps 45

Sets 48

Summary 49

Chapter 6: Design Patterns 51

Investigating Example Patterns 51

Commonly Used Patterns 60

Summary 64

Chapter 7: Implementing Popular Interview Algorithms 65

Implementing FizzBuzz 65

Demonstrating the Fibonacci Sequence 67

Demonstrating Factorials 71

Implementing Library Functionality 72

Using Generics 80

Summary 83

Chapter 8: Java Basics 87

The Primitive Types 88

Using Objects 91

Java’s Arrays 98

Working with Strings 98

Understanding Generics 101

Autoboxing and Unboxing 107

Using Annotations 109

Naming Conventions 111

Classes 111

Variables and Methods 111

Constants 111

Handling Exceptions 112

Using the Standard Java Library 115

Looking Forward to Java 8 119

Summary 120

Chapter 9: Testing with JUnit 123

The JUnit Test Life Cycle 125

Best Practices for Using JUnit 127

Eliminating Dependencies with Mocks 138

Creating System Tests with Behavior-Driven Development 143

Summary 146

Chapter 10: Understanding the Java Vi rtual Machine 147

Garbage Collection 147

Memory Tuning 149

Interoperability between the JVM and the Java Language 152

Summary 157

Chapter 11: Concurrency 159

Using Threads 159

Working with Concurrency 165

Actors 169

Summary 174

Part III: Components and Frameworks

Chapter 12: Integrating Java Applications with Databases 177

SQL: An Introduction 177

JDBC: Combining Java and the Database 191

Testing with In-Memory Databases 198

Summary 199

Chapter 13: Creating Web Applications 201

Tomcat and the Servlet API 201

Jetty 207

Play Framework 213

Summary 218

Chapter 14: Using HTT P and REST 221

The HTTP Methods 221

HTTP Clients 224

Creating HTTP Services Using REST 226

Summary 230

Chapter 15: Serialization 231

Reading and Writing Java Objects 231

Using XML 234

JSON 240

Summary 243

Chapter 16: The Spring Framework 245

Core Spring and the Application Context 245

Spring JDBC 255

Integration Testing 259

Spring MVC 262

Summary 269

Chapter 17: Using Hibernate 271

Using Hibernate

Summary 284

Chapter 18: Useful Libraries 287

Removing Boilerplate Code with Apache Commons 287

Developing with Guava Collections 290

Using Joda Time 296

Summary 300

Chapter 19: Developing with Build Tools 301

Building Applications with Maven 301

Ant 309

Summary 311

Chapter 20: Android 313

Basics 314

Components 314

Intents 315

Activities 318

Broadcast Receivers 321

Services 322

User Interface 326

Persistence 333

Android Hardware 336

Summary 340

Appendix: Introducing Scala 341

Index 353

loading