Alistair Maclean's Web Site
A resume conundrum
Back

What? When? How?

Ever wondered if the detail on the resume you are looking at is correct? Ever wondered if the item mentioned was actually in production when the applicant stated they were using it?

I have wondered the same many times, myself. In my role I have to vet many resumes and interview potential applicants all the time, so it's a constant worry that someone lying on their paperwork might be employed and have limited (or no) experience of the things they are claiming knowledge of. Careful review of a resume will often uncover certain issues, but there are items that are hard to track down, such as when products first came into the market and hence how much experience is likely to have been gained.

My checklist for reviewing resumes is not that long, but it can be draconian.

1

Count the jobs listed and see if the individual has been doing more than one a year. Short stints generally intimate less depth of knowledge, though a broader exposure to many technologies.

2

I identify long resumes with lack of communication skills, not good for one who has to inform people what they are going to do, and then what they have done. Worst offenders are those with 1 years experience and a 5 page resume.

3

Does the resume look like it has been 'tweaked' for this job? Does the resume contain every single thing you were looking for? Sure signs there is something to look out for.

4

Misstatement of a technology and a platform on which the technology was used, i.e. "Used MS-Word on IBM mainframe to develop palmtop interface". Now it could be that I am wrong sometimes on this, and that the product can be obtained for the platform, and its us is appropriate, but then there is just this bell that goes off in the back of my head - and spells out the basic premise of this web page.

5

Misspelling in a resume is not good. Most people in the IT business have access to spell checkers, if the candidate does not consider it appropriate to use one on the document that is being used to sell their skills, then what is in store for the employer?

While I can get a bit iffy about grammar, mine is so poor that to chastise someone for theirs seems a bit inappropriate!

The Techie Check

As much as adverts for 10 years experience of Java hack me off, someone claiming the same is just as fanciful, so nip them in the bud. What follows is a rough guide to some base technologies and when they came into being.

Languages

Tech Intro Comments
Ada DoD inspired language
c. 1985 Ada. Named after Babbage's assistant, this language was intended to replace a set of development tools that included Fortran and Assembler, along with Coral and a dozen others. It was a language designed by commitee, to be used by anyone that wanted to create software for the military. Never quite worked out right, it was a big bruiser of a language, containing even the proverbial kitchen sink in the form of a real-time kernel. Still in use at various companies.

Available on just about everything.

Assembler Low-level coding language
n/a Assembler. There are versions of assembler for every type of computer processor. It is the lowest form of computer language (machine code being what the computer actually runs). Tough to program in; very time consumingl; evil to debug; most people only write tiny potions of applications in it now, anything else is a lie, or you are reading a resume by a follower of the Mansons!
C/C++ Ubiquitous programming language
1972 C. The original C was introduced in about 1972. It has been implemented on just about anything that uses electricity. The main flavours are K∓R and ANSI versions. Now an older language it is still the basis for C++, Java, Javascript and many other languages.
1986 C++. Again, implemented and available on most systems. A complex language that can take a long time to command. Most people use it as a "C with classes". Introduced Object Orient programming to the masses.
Cobol Legacy and Mainframe programming language
Dawn of time Cobol. The original language by Dr. Grace Hooper. Used extensively on mainframes and mini's, it is a bit long in the tooth now. There are O-O versions, and even "visual" versions. Cobol was the root of all evil with respect to the Y2K problem, though it kept many people well employed. Even just 5 years ago, over 50% of all programs were still written in Cobol. Standards body sets the language syntax, current version is Cobol-90 (I think), with Object extensions.
Fortran Legacy scientific programming language
c. 1960 Fortran. A language that is still used in scientific circles because it it well trusted and understood. It's an effiecent language, though a bit ponderous when used to create GUI type applications. Current version is FORTRAN- 80, though the most used versions seem to have been FORTRAN-4 and FORTRAN-77. There is talk of an O-O version.

Available on just about everything.

Java Sun developed programming language
c. 1994 Java 1.x. Sun introduced Java first as a Beta product then as Java 1.0. They fairly quickly run up the minor version numbers, getting to 1.1.8 by 1998. This version seems to have been aimed more at applet creation, hence its usefulness was limited.
1998 Java 2. Sun played about with version numbering more recently bringing out Java 2, which has version numbers that start at 1.2 and go up. These versions are more able to handle enterprise needs through a maturing set of packages. Terms like EJB, RMI, JDBC, JNDI, JNI (in fact just about anything that can start with a J) are now mainstream in the Java world.

Primarily used on Solaris, NT, IBM Mainframes, and most UNIX versions.

Pascal, Delphi & Modula Structured development languages
c. 1975 Pascal was developed by Nicolas Wirth as an educational language. It gained popularity after fledgling Borland introduced Turbo- Pascal, giving PC developers a extremely powerful and fast development tool.

Available on just about everything.

c. 1981 Modula, Modula-2, & Modula- 3. These were Wirths follow-ups to Pascal. There was more type checking in the languages, but they never really gained widespread use. Nice languages. Modula-3 is in wider use in academic circles, particularly as it provides many O-O features.

Available on just about everything.

1992 Oberon. Eh! Well, this one is off-the-wall, here just for completeness sake. It is a language and graphical operating system all in one. It is based on the Modula family but is quite O-O. Not used much outside of academia.
1994 Delphi 1 & 2. Borlands follow-up to its highly successful Pascal versions allowed programmers to develop windows applications as easily as VB programmers could, but offered speed that VB programmers could only dream of. This meant that Delphi became a valid alternative to C++ as a tool for the creation of other software products. Has a cult following and is still well respected.

Available on just Microsoft OS's.

Perl A scripting language
1987 Perl. Created by Larry Wall as a language to allow easy creation of utilities on operating systems like UNIX, it has become widespread. With the inclusion in recent years of the PerlCGI and Mod-Perl libraries it has gained widespread use in the Internet world, entire web sites now being written in it. Current version is 5.something.

Available on just about everything.

PL family IBM's Programming Language/1
c. 1960 PL/1. This was IBM's attempt at the mother-of-all languages. It never quite panned out. PL/1 is a little old now, but still lent many features to structured languages and even O-O languages. Syntactically efficent language, it was widely used on Mainframes and Mini's.

Has been available on just about everything.

c. 1975 PL/M. Intel licensed IBM's PL/1 and created a cross platform development language that for many years was the most efficient means of programming Intel microchips. It was killed by Intel in 1995. There are still a few vendors that make PL/M-51 compilers for the 8 bit chips. IBM also created a similar language called variously PL/S or PL/X depending on version. These were only used by IBM.

Available for PC-DOS, iRMX and ISIS (both, Intels own).

Powerbuilder Client/Server development language
c. 1993 PB 3. First produced by Powersoft, then later by Sybase, this is a powerful enterprise level development tool. Later version got bigger and slower, but always offered power.

Available just on MS-Windows.

c. 1995 PB 4. The first version offering some cross platform capabilities, this time on the Mac.

Available on Mac and MS-Windows.

1997 PB 5. An Object Oriented version. Just intime for the Internet revolution.

Available on Mac and MS-Windows.

Rexx Mainframe & OS/2 scripting development language
c. 1970 Rexx. Another IBM language, used widely, it is a scripting language for the creation of utilities. One thing lead to another and VM/CMS, an entire operating system was written in it. This just went to prove that the correct tool is not always needed, a genius can write anything in anything, for no other reason than its there. Rexx has a resurgence when it was bundled with OS/2. There were even versions like Visual-Rexx. Currently in slumber.

Available on just about everything.

RPG Mainframe development language
c. 1960 RPG. An IBM language, used extensively as an alternative to Cobol. Current versions include RPG/400 used on the AS/400 range and RPG- 3 used on the main frames.

Available on all IBM hardware.

Smalltalk Early Object Oriented development language
c. 1978 Smalltalk has been around a while. It's golden premise of being the OO language was belittled by its appalling performance and difficulty of implementation. Not used much now. Mainly used by Banks, brokerage houses and others with extremely deep pockets.

Available on just about everything.

VB Visual Basic - A Microsoft Programming Language
c. 1992 VB version 1 and 2 were very limited tools that showed that there was a new way to create Windows applications but little else.

Available only on MS operating systems.

1993 VB version 3 was a revolution. It had limited database connectivity, access to zillions of third party components and was moderately reliable. Its a bit long in the tooth now, few companies use it to create new applications.

Available only on MS operating systems.

1995, 1996 & 1998 VB version 4, 5 & 6. These were the main tools Microsofties used to create corporate client/server applications. 5 and 6 also introduced COM and DCOM. VB 4 was a dog.

Available only on MS operating systems.

1997 ASP. Active Server Pages are a bastardized form of Visual Basic, aka Visual Basic Scripting Language. ASP is used for the development of web sites, Visual Basic Scripting is for scripting, primarily in NT.

Available only on MS operating systems and systems running ChiliSoft.

Operating Systems

Tech Intro Comments
Unix High-end Workstation and Server Operating System
c. 1984 SVR4. Former AT∓T version of UNIX. One of two original versions. Now owned by SCO. Can be run on many types of hardware.
c. 1980 SunOS. Sun implementation of UNIX, predominantly based on BSD distribution. Runs only on older Sun hardware, all pre-SPARC (i.e., mostly Motorola 68K based).
c. 1993 Solaris. Runs primarily on the latest SPARC and ULTRA-SPARC hardware, though a version exists that runs on Intel x86 (or compatible) processors. Very widely used, particularly in scientific and engineering areas, and in the brokerage industry. Latest version (2.7) is a 64 bit implementation.
c. 1980 AIX. Unix from IBM for the RS/6000 series of computers. A slightly strange implementation of UNIX but widely sold.
c. 1980 HPUX. Unix from Hewlett- Packard.
c. 1980 BSD. Called the Berkeley Software Distribution, BSD is the west coast half of the Unix story. While not itself a significant commercial force, its normally free, it has retained a presence on the Internet by being one of the leading web server OS's.
c. 1992 GNU Linux. Technically not a UNIX, it is a UNIX clone, meaning its kernel replicates the activities of UNIX but does not use any BSD or AT&T code. Most of the system utilities are offered under GNU licenses and the whole system is generally free of charge. Extremely widely used on the Internet, though often implemented by hobbyists.
Mainframe IBM mainframe Operating Systems
c. 1965 S/370. The original mainframe OS. This was a multi-user, multi-tasking operating system. It also employed Virtual Machines allowing for years of people piggy backing replacement operating systems on it.
c. 1970 DOS. Not to be confused with PC-DOS, this was a mainframe OS, widely used in batch systems.
from 1970 S/3x. IBM produced a whole series of mid range machine operating systems, from the S/36, through S/38 to OS/400. Quirky, menu driven operating system. OS/400 is still very widely used on the successful AS/400 range of machines.
c. 1980 XA. Based on the 370 Extended Architecture, it was one of the last of the "old" mainframe OS's. Still in use, but dying out. Many IBM 3090's used it.
PC Operating Systems Smaller Operating Systems
c. 1980 MS-DOS/PC-DOS. Simple Operating System that kicked off Microsoft and was standard fare for the early IBM PC. Used widely, becoming nearly the only OS people ran on their desktops. A 16 Bit system that had a 640Kb memory limit.
c. 1984 Mac OS. The first commercially successful operating system with a graphical interface. Its style and features continue to be trend setters today. Runs only on Apple Macintoshs.
c. 1986 MS-Windows. The basis for a whole range of Microsoft operating systems that have graphical user interfaces. Version 1 was almost unknown. Version 2 was available to troubled by restrictions imposed by prior court cases. Version 3 was a ground breaker (1989), and became the reason the PC-DOS operating system slowly disappeared. Windows 3.1, then Windows for Workgroups were steady improvements making networks more feasible.
1995, 1998 & 2000 MS-Windows 9x. Windows 95, 98 and Me share similar code bases, they are all almost completely 32 bit operating systems. Extremely widely used, on more than 200million machines.
1992 on MS-Windows NT, Win2K. Windows NT (3.1, 3.5, 3.51, 4.0, and Windows 2000) are high power PC operating systems with more reliability built in from the begining. Used widely on workstations for code development and servers for departmental applications. The latest technologies Microsoft is pushing are embodied here: COM, COM+, Active Directory, DDNS. The Operating system used to function on several hardware types, but is now limited to just Intel x86 (or compatible) chips. Latest version is Windows 2000, available since Q1 2000.
1989 IBM & Microsoft OS/2. The first full 32 bit OS for PC hardware from IBM and Microsoft. Not really successful, but a good product nonetheless. This is still used by many companies, latest version is Warp 4 available sinve 1999.
  DR-DOS, Novell DOS. Originally Digital Research's version of PC-DOS, taken over by Novell in the early 1990's, it is now sold by Caldera. Novell added networking to the brew. Still to be found in some settings, and some products use it for boot disks.
c. 1984 Novell Operating Systems (NOS) . Novell has been selling a network operating system for many years. The earliest version I recall were 2.x. In more recent years 3.x (c. 1991) and 4.x (c. 1993) have been the biggest sellers, at one stage out distancing almost all others. Novell 5.x (1998) is the current version, and looks like it could be the last. Novells new direction seems to be in selling OS components to NT systems, i.e., Novell Directory Services (NDS).
1997 BeOS. Used in multimedia settings, a recent Operating System that competes with Windows and to some extent both Mac and Linux. Very graphical, with many inovative features, probably not seen on many resumes.
c. 1988 MP-DOS. A multi-tasking version of MS/PC-DOS. This is not an MS or IBM product. Was, and occasionally still is, seen in systems such as POS terminals - or on such persons resumes.
  Others. Over the years there have been many PC operating systems, most have come and gone in the winking of an eye. OS's like GEM, Amiga DOS, TR-DOS, had market share, but have mostly faded, others like CP/M have simply exceeded there welcome. Some OS's are still with us, items like OS/9 and iRMX having very specialized uses.

Technologies

Tech Intro Comments
VBX Visual Basic Extensions
c. 1993 VBX. The main component interface for building VB applications, first saw the light of day in VB 2. Got into full swing in VB 3, and was only accessible in VB 4's 16 bit edition. Still used by some developers because of the ease of implementation, and the fact that it was well supported in many languages, not just VB.

Available only on MS OS's

OLE/Active-X MS Active Extensions
c. 1994 OLE/ActiveX. OLE technology first saw the light of day shortly after VB 3.0 came out. The Office product line, from 4.2 onwards has been based on it. After one or two mis-starts and renamings, the technology microsoft uses to expose internal system components to the outside world became mainstream.

Available mainly on MS OS's, but implementations have been put on Mac and UNIX

COM Component Object Model
c. 1996 COM. OLE/ActiveX technology needed a face lift, so they changed the name again. However, COM began to look like the strategic way Microsoft was going to battle CORBA, though it lacked the networking technology.

Available mainly on MS OS's, but implementations have been put on Mac and UNIX

DCOM Distributed Component Object Model
c. 1997 DCOM. COM offered little in the way of cross network capabilities. DCOM was to fix this ommission. It employed for its lowest levels the DCE/RPC standards (as standard as MS want to leave such). DCOM is tough stuff to get working.

Available only on MS OS's, even Win 95/98 need extra utilities to implement

COM+ Component Object Model+
1999 COM+. This is the amalgamation of many things. Its biggest entry was made with Windows 2K, but bits of it were available before this launch. Integrates COM/DCOM and certain other features to make a more consistent programming interface.

Available only on MS OS's

CORBA Common Object Request Broker Architecture
1992 CORBA. DCE and RPC were tough standards to implement with any success. Applications based on them, even tougher. CORBA was designed to sit atop the distributed networking protocols and provide a mechanismn to pass data, in the form of objects, about the network. Additionally, the object model allowed for the implementation of executable methods in these passed objects. It was almost an orphan technology until Java came along and harnessed its power. Often also used by C++ programmers on UNIX systems.

Available on most OS's

DHTML Dynamic HTML
1997 DHTML is a combination of technologies partially standardized in HTML 4.0, that allow browsers to manage pages using Cascading Style Sheets (CSS), and JavaScript or VBScript.

Available on Microsoft and Netscape browsers, but not implemented the same

DOM Document Object Model
1997 DOM. This was originated by Netscape in an effort to make browsers more consistent. The DOM was used to standardize the way programmers worked on specific pages, or on objects within pages.

Available on most Netscape browsers, and those implementing JavaScript

MTS Microsoft Transaction Server
c. 1996 MTS was Microsofts' initial crack at doing a transaction server to implement the middle ware code needed in n-tier Client/Server systems. It was modeled on prior IBM mainframe systems (MQ) and others. When COM+ (1999) was released it incorporated MTS in its make-up thereby (supposedly) making the creation of cross network, load balanced, pooled resource systems easy to implement.

Available only on Microsoft Windows NT and 2000

EJB Enterprise Java Beans
1998 EJB was Sun's effort to implement transaction processing on the Java platform. It was modeled to some extent on the architecture of MTS. Allows Java to have pooled resources and efficiently threaded services on servers.

Available on any Java 2 platform


[Opinions Index]
[page index]