I read a lot of resumes. It’s a depressing activity. One thing I’ve gotten from reading so many resumes is an empathy for hiring managers.
Don’t get me wrong. I remember those anxious, uncertain days of writing my own resume. Worrying whether I had just the right words that would keep my resume out of the circular file.
The truth of the matter is that most resumes are crap. Total and complete crap. When I scan through resumes, I make three piles.
1. Incoming
2. Shortlist
3. Discard
I read all resumes that cross my desk. What I’ve found is that resumes from headhunters are no less crap than those off craigslist. I speculate that is an artifact of the utterly thankless, fruitless job it must be to counsel applicants on writing a good resume. It’s simply more effective (revenue-wise) to speak in proxy for the applicant to the hiring manager.
Ok. I have three piles. Before reading even the first resume, I review my objectives in hiring another employee. It’s not a slot, a position, a req. I’m adding another person to the team. It may sound trite but I really believe a company is simply the whole of its people. I agree with Tom Peters, who writes in talent.
So, I have a pile of incoming resumes which I read one-by-one and place them in either the shortlist or discard pile. Some resumes are easy to sort. Some not so easy. What gets a resume in the shortlist pile? Something in the resume left me with the sense that this person might be a real contribution to the team. I leave it to you to puzzle out what gets a resume in the discard pile.
There is, in all of this, a type of resume that is harder to read than any other: Curriculum Vitae Maxima. A CV is no substitute for a well written resume. The worst of all CV’s is the “Block Copy” version wherein each moment in one’s professional experience is documentented in a boilerplate. The result is a soup of buzzwords and endless rambling about past projects.
Confused? Let’s look at an example from a popular job board and then I’ll make some comments.
SUMMARY Professional Summary
• 7 years of experience in developing J2EE Web applications using different frameworks.
• Extensive experience in Design and Development of Web application using MVC Framework.
• 2+ years of experience in mobile software development.
• Work experience in Storage, financial and Telecom domains.
• Experience on various Application servers BEA Weblogic, and IBM WebSphere and in the Web server Apache Tomcat.
• Sound experience in working with Object Oriented design, MVC Architecture, Enterprise Java Beans, Struts Framework, Hibernate, Java Design Patterns and successful implementation of the same.
• Sound knowledge of Core J2EE Design Patterns and EJB Architecture.
• Work experience in SOA and MOM.
• Proficiency in programming Java Threading, JSP, Servlets, JDBC, RMI, EJB.
• Sound knowledge of different XML Architecture frameworks like JAXM, SAAJ, JAX-RPC, JAXB, XSLT, Xpath, AJAX, Apache Axis.
• Experience in Java Messaging Service.
• Expertise in Object Oriented Analysis and Design using UML.
• Experience in using relational databases – Oracle 9x, MS SQL Server and MY SQL.
• Sound knowledge of Spring3.2.
• Excellent project life cycle experience (SDLC) in all aspects of requirements specifications, design, code, test, deploy, maintaining.
• Proficient in various software development and debugging tools like Eclipse Debugger.
• Experience in developing GUI using java Swing.
• Experienced in working on Test Plans, Functional Specifications, Use cases, User Acceptance Testing (UAT), Involved in performing the FIT Analysis, Stress testing.
• A team player with concern for quality at all levels and ability to perform under stress. Good communication and interpersonal skills, commitment, dedication, result oriented, hard working with a quest and zeal to learn new technologies and undertake challenging tasks
TECHNICAL PROFILE
Languages J2SE 1.5, JSP 2.0, Servlet 2.4, JDBC 3.0, EJB 3.0, RMI-IIOP, PL/SQL,
C++, JNDI
Web/App Server Apache Tomcat 4.x, BEA Web Logic 8.1, IBM WebSphere 6.0
Database ORACLE 8i/9i/10g, MS SQL Server 2000, MySQL4.x, MS Access
IDE Eclipse 3.2, Net Beans IDE 3.5.1, JBuilder 8/9
Version Control CVS, VSS, Rational Clear Case
Framework Struts 1.3, Hibernate 3.0 , Spring 1.0.3 , JSF 1.2
Tools ANT, LOG4J
Scripting and markup JavaScript, HTML, WML, Ajax
Methodology UML, Design Patterns
Web Services SOAP, WSDL, JAXP, JAX-RPC, JAXM, JAAS, JAXB, JAXR
XML Technologies XML, XSLT, Xpath, SAX, DOM
Operating systems
Windows 2000/XP/NT/98, Enterprise Linux
EDUCATION n:
Master of Computer Applications (M.C.A), India.
PROFESSIONAL EXPERIENCE
Project Celerra Manager
Client EMC Corporation, NC
Environment / Tools Java, Struts1.2, Servlets, JSP, Applets, JSTL,
Custom tag libraries, SWT, XML, Perl Scripts,
JAXB, HTML, Apache Tomcat 4.2,Eclipse 3.2, Hibernate3.0,
Oracle 9i, OOAD, Linux (RHEL)
Duration Dec 2006 – Present
Description:
EMC Celerra Manager is a web application that enables intuitive management of EMC Celerra IP storage (NAS and iSCSI) solution—and ensures high availability. Celerra Manager helps configure, administer, and monitor the Celerra networked storage from a single online interface—saving time and eliminating the need for a dedicated management workstation.
Responsibilities:
• Actively participated in High-level Document and Detailed level Document for different modules in the project.
• Worked as module lead.
• Involved in enhancing the existing product
• Developed the statistics graph using JSP, JSTL, Custom tag libraries, Applets and Swing in a multi threaded architecture
• Developed the Struts Formbeans, ActionClasses and JSP for Notification processing
• Implemented the business logic for alert processing, for various events using Java threading.
• Implemented the hibernate mapping for the statistics data for different storage objects and database interactions.
• Involved in bug fixing and performance tuning of the existing
project, experience in working with JProfiler for handling memory leak.
• Maintaining and enhancing the various graphs displayed to user.
• Used the Struts plug-in property for validation, developed the Action Classes, Action Form Classes, created JSPs using Struts tag libraries and configured in struts-config.xml, web.xml files.
• Created the documentations for the enhancements.
• Developed different debugging tools for the application in Java.
• Involved in the integration and JUnit testing of the components and fine-tuning of the code.
Project Retail Enterprise Lending System (Chase JPMC)
Client Dorado Corporation, CA
Environment / Tools J2SDK1.4.2, JSP, Servlets, XML, XSLT, SOAP, Struts,
JAXP, EJB 2.0, BEA Weblogic 8.1, ANT, JNDI,
JMS, WebServices, Eclipse 3.2, Oracle 9i, OOAD, MQ Series
Duration Oct 2005 – Dec 2006
Description:
Retail Enterprise Lending System (ELS) is a product for use of JPMC (Chase). This product provides an integrated Loan Origination System (LOS) for Chase’s retail users. The product leverages existing components including ChannelMaster™, PriceMaster™, SourceMaster™ and .MOR™ server. Service Oriented Architecture (SOA) and Message Oriented Middleware (MOM) serve as the technology platform for these products. The ELS integrates with Chase’s Enterprise Mortgage Integration (EMI) Hub. The purpose of this integration is to generate up-front (Good Faith Estimate etc.) and closing documents for the borrower to sign.
Responsibilities:
• Involved in design and development of ordermanager JSP pages
• Involved in developing the Entity Beans for persisting / updating the client information.
• Used JAXP transformer for transforming the xml from ChannelMaster and send to the verification Queue.
• Action classes and handlers for processing the messages and passing it to various other applications is done through STRUTS as it requires higher level of abstraction.
• Used MQseries for Java to communicate with MQ objects to retrieve messages from Queues.
• Designed DOM objects to pass the reference to channel master and ordermanager so that both of them can have message communication. All Java coding is done in J2SDK.
• Used JAXM for making the SOAP message for invoking the Channel Master.
• Written the Junit test cases for the application.
Project GeneTick
Client Convergent Communications , India
Environment / Tools Java, Servlets, JSP, J2ME, XML, HTML, Hibernate, OOAD, Oracle8i,
WebSphere 5.2, Net Beans IDE, Windows 2000, GSM Modem
Duration Oct 2004 – Sep 2005
Description:
GeneTik is a mobile Application through which a client can avail the facilities of online ticket booking from the client mobile. This facility will be available for Cinemas, Restaurants, Air-Travel etc. The application has 3 channels through which the client request will be serviced –
1. J2ME – The client has the GUI in their mobile using which he/she could select the category they are interested and send a request for the ticket. The request will be processed in the server and a bar code for that ticket will be send back to the client along with the accompanying coupons if any. The client can make the payments through a credit card.
2. SMS – The client should send a request to a short code. There is a message listener which always listens for incoming requests from the client to serve the request and sends back the relevant information and accompanying coupons if any, as picture messages. This channel supplements the J2ME channel, like providing information regarding the nearest hotels, movie theaters etc.
3. WEB- The client will have to make HTTP requests from web browsers for the Tickets.
Responsibilities:
• Involved in the Design, Development, Testing of the SMS Channel.
• Developed the SMS Channel using GSM Modem.
• Generated the PDU Algorithm for Picture Messaging.
• Developed the event based communication channel to the GSM Modem through the COM port.
• Involved in the design and development of the controller servlet, which intercepts the requests from the client.
• Prepared the Hibernate Mappings for the client data.
• Created database tables in Oracle as backend for storing the client data
• Involved in developing the DAO layer to access the Oracle database
• Involved in the integration and unit testing of the components and fine-tuning of the code.
Project SFSolChat
Client SF Solutions, Switzerland
Environment / Tools Java, Servlets, JSP, XML, HTML, EJB, Oracle8i, JNDI,
SAX Parser, IBM WebSphere 5.1, WSAD, Web Service, SOAP,
Windows 2000
Duration Jan 2004 – Sep 2004
Description:
SFSol Chat is a web-wap based chat application. This application enables the mobile clients to chat with web-browser using the WAP gateway. The mobile clients with a minimum balance may chat with a published shortcode. There are operators who assume some nickname for chatting with the mobile clients. This software also provides for MMS and picture message conversations using SOAP. The mobile service provider takes care of the billing details through a Web Service.
Responsibilities:
• Involved in the Design, Development, Testing of first phase of the application.
• Developed user interfaces using JSP, XML, Java script validations and HTML.
• Developed the controller servlet using front controller pattern.
• Developed the Stateful Session Bean components for maintaining the operators sessions.
• Developed the session management API using Java threading
• Developed the Entity Beans to persist the client conversations
• Involved in Database table design and developing HQL Queries and stored procedures.
• Developed the test cases for Junit testing.
Project Content Management System.
Client Airtel, India
Environment / Tools Java ,JSP , Servlets , WML , Tomcat 4.0,
Nokia Smart Messaging Kit , Oracle 8i, Windows
Duration Sep 2003 – Dec 2003
Description:
This is a web-wap based application for content management for mobile end users. The mobile users may download different MMC contents from the content management server. There are different users for this product like the content provider who uploads the content to the server , service provider who actually provides the basic mobile service. The application takes care of content management from different content providers as well as the billing when an end user downloads content.
Responsibilities:
• Analyzed the user requirement and designed various screens
• Developed the WML Presentation pages
• Coded the different servlets, JSP and Java bean components
• Implemented the DAO object to connect to the oracle data base
• Involved in table design and writing stored procedure
• Code the JDBC for accessing LOBs , image and ringtones
• Wrote client-side Java scripts.
• Secondary responsibilities included problem analyzing and fixing reported bugs.
Project Registration Management System
Client America Quality Assessors India Pvt. Ltd.
Environment / Tools JSP 1.1, Servlets 2, Java Beans, Java Mail, XML, Oracle9i,
Tomcat 4 , JavaScript.
Duration Feb 2003 – Aug 2003
Description
This is an Intranet Project developed for the America Quality Assessors India Pvt. Ltd. AQA India is involved in auditing Organizations going in for ISO certifications. The project keeps track of various activities, like the auditors associated, their affiliations, organizational data, certification information, and surveillance information. Various reports are generated monthly/yearly wise, auditor wise, organization wise, surveillance wise, Quotation wise etc.
Responsibilities:
• Involved in Business Process Study, Functional Specifications of the System.
• Involved in Coding, Designing, And Integration of Modules.
• Wrote client-side Java scripts.
• Involved in Developing and Deploying Java Beans.
• Programmed JSP Pages.
• DAO Objects to Connect to Database .
• Used JDBC for data base access
• Writing Unit Test Cases & doing Unit test and Responsible in Developing Controller Servlet.
• Involved in the integration and unit testing of the components and fine-tuning of the code.
Project IndiaTunes.com
Client India Tunes Pvt. Ltd
Environment / Tools Jdk1.2, JSP 1.1, Servlets 2.2, Tomcat 3.2, Oracle 8i , JavaScript
Duration Jun 2001 – Dec 2002
Description:
This is a web application, which allows the audiocassette dealers and customers to search for the details of the cassettes available by Cassette Company. The system takes care of Order entry, Payment, Shipment and Inventory processing. It provides a facility for entry of Customer’s/ Dealer’s details, Order details and monitoring of the Reservation, Return/ Replace/Change offer, dealer’s Credit Limit.
Responsibilities:
• Involved in Coding and Developing WebPages using HTML and JSP.
• Programmed JSP , JSTL , Java Bean and servlet components,
• DAO Objects to Connect to oracle Backend
• Implemented the data base connection pooling.
• Wrote client-side Java scripts validations.
Sweet Mother of Pearl! I ask you to imagine for just one moment an incoming pile 30-deep of these masterpieces of redundancy.
RULE 1: The resume shall not exceed 2 pages.
RULE 2: The resume shall use standard font and formatting.
What’s standard? As a rule, I’m going with 2KB to 2.5KB per page of raw ascii text. Two pages … 4-5K bytes. That’s it. After formatting, this gives a good balance of text to whitespace.
How to begin writing a resume? Start with a simple text editor. There are numerous guides on how to organize your resume. Which one you choose really doesn’t matter to me. However, I do expect an opening paragraph followed by a block that establishes your domain knowledge.
The example resume above fails to supply a an opening paragraph. I’m looking for a brief message that says “I’ve done this and now I want to grow in that area”. After reading this resume, I might suggest this opening paragraph.
RULE 3: The resume shall include a three or four sentence opening paragraph.
The example gives a summary section but I don’t get a clear sense of what this applicant’s true domain knowledge is. It seems to say, “I specialize in everything.”
The applicant also, in the summary, claims to have “Sound knowledge of Spring3.2”. Funny. As of today, Spring is only at version 2.5.
RULE 4: The resume shall include neither lies nor misinformation.
My suggestion is to simply omit all version numbers. As soon as you add version numbers, you lose. They date your resume and, as it turns out, are largely irrelevant.
When you create the domain knowledge block, keep it simple and include only what you consider your assets, not what you think I want to hear.
RULE 5: Use a simple table to show your domain knowledge.
The experience section should highlight your contributions and experience gained at each of the assignments you choose to highlight. Contrary to what you may read, I don’t believe any claims of “I did X and that saved/earned the company Y dollars.” Total and complete crap.
What format you choose for your experience section is up to you. Just make it clear what you contributed and the experience you gained. I really don’t care about anything else in your resume’s experience section other than these two things. The verbal interview is the place to expand on your background.
RULE 6: Experience is only contributions and experience gained.
End the resume with your education. Do not include “references on request” or any other such nonsense. Just your education.
RULE 7: End the resume with your education.
If you are posting your resume on a job board, then the resume must stand on its own. However, if you are sending your resume to a company, you have the option of including a short cover letter. I highly recommend doing just that. A headhunter, from an applicant’s perspective, is a talking cover letter. Help the headhunter understand why you would be interested in a company. If you are writing a cover letter, think like a headhunter.
The cover letter should reflect your genuine interest in a company. Don’t force it. It should reflect your actual interest. If you cannot muster interest in a company, do not apply.
RULE 8: Write a cover letter.
Finally, there is no substitute for basic communications skills. A resume that makes it into the shortlist pile is only the beginning for that applicant. The rest of the interview process is verbal. But that is an entirely different topic.