Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I have keen interest in design patterns. I have been reading a lot about them. Specially, from HEAD FIRST. Can I write about design patterns in my resume?

I am a fresher. Going to sit in on-campus placements.

Though I think that would impress the interviewer if i am able to defend his questions but, on the other hand I think there can be three points I am worried about:

  1. He might ask too deep questions to show me that I have written a wrong point.
  2. He might not know about design patterns.
  3. Besides he may ask of design patterns that are not in Head First.
  4. he bounces on J2EE design patterns, which I am afraid to study right now.

Anyways, what i am asking is. do the people who come to on-campus placements for taking interviews have any knowledge about design patterns? If they do, then how much. I am a bit afraid to put this on my resume.

share|improve this question
2  
@ point 1 - your resume should not be an essay on design principles. It should be about you and how you have used or take an interest in design principles. –  shiznit123 Jul 29 '11 at 18:14
    
Are you just reading or are you actually using the patterns? There is a difference. –  JB King Jul 29 '11 at 19:29
8  
No offence, but I would sooner hire a noob who writes "Ping Pong" rather than "Design Patterns" under 'interests'. That is how useful encyclopedic knowledge of design patterns is. Either way I will be working with a complete noob, but at least I will know that I can play ping pong with him/her. –  Job Jul 29 '11 at 19:49
3  
Honestly, if I saw that on a resume it would be a mark against you. Design patterns are nothing more than workarounds for a deficiency in a language - typically, I find that people who pride themselves in their design-pattern knowledge don't understand this. See here and here. –  BlueRaja - Danny Pflughoeft Jul 29 '11 at 21:35
2  
It would probably be appropriate to consider the physical location of Abhishek here. –  Paul Nathan Jul 29 '11 at 22:32
show 4 more comments

6 Answers

up vote 8 down vote accepted

Can I write about design patterns in my resume?

If you write it on your resume, be prepared to discuss it. If you aren't ready to have a technical discussion on the subject, don't put it on your resume. Generally, the questions start off general and broad

Anyways, what i am asking is. do the people who come to on-campus placements for taking interviews have any knowledge about design patterns

Any good software engineer should know, at a minimum, what design patterns are, their purpose, and a subset of patterns from their domain (enterprise patterns, concurrent patterns, and so on). I would assume that any technical interviewer would have this knowledge.

Though I think that would impress the interviewer if i am able to defend his questions but, on the other hand I think there can be three points I am worried about: 1. He might ask too deep questions to show me that I have written a wrong point. 2. He might not know about design patterns. 3. Besides he may ask of design patterns that are not in Head First. 4. he bounces on J2EE design patterns, which I am afraid to study right now.

I would hope the interviewer understands your current skill level and experience. Just because you have a professional interest in something doesn't mean you know everything about it. To me, it indicates that you have gone above-and-beyond and taught yourself at least something about the topic, but not that you are an expert.

If you can't have an intelligent, cohesive conversation about something on your resume, that's a huge mark off, I think. But you also can't be afraid to let them know exactly how much you know and that you know what you don't know. I, personally, wouldn't expect you to know everything, especially as a student or early in your career. I would expect you to have read the seminal texts on the subject and be prepared to have a cohesive, fairly detailed conversation on an appropriate level.

I, personally, wouldn't expect you to know everything, especially as a student or early in your career. In your example of design patterns, you should be able to discuss things such as the applicability, trade-offs, and general structure of at least some of the GoF patterns before I would consider you knowledable in the subject. I would also anticipate that you have applied at least some of these patterns appropriately in projects that you have worked on.


As an aside, age and experience have little to do with professional interests. I've stunned interviewers when I tell them that I'm interested in process management and improvement, project management, software quality, and measurements/metrics, and then have gone on to have fairly length discussions on these topics. Very few young software engineers and recent college graduates are interested in these topics - many just want to design and write code.

share|improve this answer
    
That was really encouraging and helpful. And the last para.."as an aside"..made me feel..that i am on the right path...all in all one of the finest answers I was expecting! thanks. i will write that in my resume for sure. and will be prepared to discuss the patterns. –  Abhishek Jul 30 '11 at 20:03
add comment

It's areas of interest. Of course you can (and most likely, should) put that down on your resume.

Short answer to your question: Some interviewers who go do interview on campus know about them, some might not. It's not a sure thing, but most likely the company will send their best developers who also have good soft skills in order to connect with possible hires.

Heads first is how I first got started with design patterns. Even though it explains the patterns very practically and with simple examples, you might have to re-read each pattern several times to really understand it. At least I know I had to.

In my previous company, I must have interviewed about 200+ people, a lot of them with 5+ years from experience who were not even aware of design patterns. You being right out of college and already reading about them, that's a good plus, at least in my opinion.

About your fears:

  1. There's nothing to be afraid of deep questions. Just give the most detailed answer that you can, and that will be enough. Don't try to guess and pretend to know the answer though, that does not look good. There's also nothing wrong with being wrong in a couple of questions.

  2. If he does not know about design patterns, well, I'd be careful of joining that company.

  3. Again, same answer to point 1. Nothing wrong with not knowing the answer to a question. Of course you might make an educated guess, noting that you don't know the answer but from the name of the pattern, you think it might be useful for X.

  4. Design Patterns are general, language agnostic. Just like the definition says...proven solutions to known problems. I'm not sure how any of them would be specific to J2EE.

Anyways. If you're already reading about design patterns, it gives you a plus in my book. Just be honest and have a good attitude, that's like 50% of the interview. Good luck.

share|improve this answer
    
you with some others have solved one of my dilemmas. thanks. and seriously the point approach you adopted to counter my points...have removed all fears. "Design Patterns" is in my resume for sure! –  Abhishek Jul 30 '11 at 20:09
    
glad to hear :) –  silverCORE Aug 2 '11 at 5:52
add comment

From my experience, University recruiters are usually going to take your resume and grep it for keywords. Then they will ask you some ridiculous questions about how to use pointers in oracle to compile java-script into the CLR. They will look at your keywords, your GPA, then your letters of recommendation and then place you in some God awful job that is a horrible placement for you. Sure put it down, they won't know what it is, and God knows they won't know how to use it.

IF this was a legit interview, my opinion would be: An Area of Interest is much different than an Area of Expertise. I want to see interviewees who are interested in learning a certain skill and simply expect them to be passionate about that area. I am certain someone could ask me a question about c++ that I would be stumped on, that doesn't mean I wouldn't be an excellent c++ programmer. Anyone you would ever want to work for would understand this.

share|improve this answer
1  
With University interviewers it can say a lot about the company too. If they send an HR idiot, then yes, your first part applies. Usually if the company sends a CS guy/gal to hire CS people then it's closer to your second paragraph. –  Jeff Langemeier Jul 29 '11 at 19:15
1  
Then they will ask you some ridiculous questions about how to use pointers in oracle to compile java-script into the CLR. Made me chuckle –  AngryBird Jul 29 '11 at 21:25
    
@AngryBird I'm serious, they do that shit all the time. Managers are bad about it too. Glad I made you chuckle. –  Jonathan Henson Jul 29 '11 at 21:28
add comment

There's maybe 20 design patterns almost all non-hopeless developers know, and many quite obscure ones few ever heard of. This is a pretty narrow area of very common knowledge with many people not even realizing there's more to it, and you'd better be able to cite some of the more obscure, uncommon, ingenious and tricky ones, unless you want it looks like your areas of interest include "conditional statements", "typing" or "reading manuals".

Instead of being afraid of being asked about some patterns not on "head first", go find some of your own, and prepare to present some tricky one of your choice.

share|improve this answer
add comment

It all boils down to buzzword bingo on your resumee anyway. Just list it. When you join the working force, you'll soon realize that many, many people don't have the slightest clue about programming, architecture and patterns. They have worst practices yet demand such skills. It's all hot air anyway!

On the other hand, if you come to a good shop, they'll realize you're a fresher and they'll appreciate that you read about it (and hopefully tried to use it) and that you are willing to learn. They certainly wouldn't expect you to get everything right from the beginning when they are reasonable.

he bounces on J2EE design patterns, which I am afraid to study right now.

I can tell you one thing: When I started my career I was afraid of that daunting buzzwords, too. But in the end, everyone just cooked with water. There's no need to be afraid. It isn't as difficult or hard as it sounds.

share|improve this answer
add comment

A competent interviewer could likely ask you how you've used design patterns in your recent projects. Reciting design pattern definitions straight from the book will not impress an experienced interviewer, but if you can come up with a good story how design pattern Foo made your life easier with project Bar it most likely will make you look more professional in his or her eyes.

share|improve this answer
    
I would prefer an interviewee to have only theoretical knowledge, than not having even heard of or been interested in design patterns before. –  Boris Yankov Jul 29 '11 at 19:34
    
agree with Boris. Someone right out of college being aware of design patterns is good enough. If he can ask a couple of simple questions about them, or even explain the basic categorization of them, that would be good enough for me. –  silverCORE Jul 30 '11 at 2:34
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.