February 2009 Archives

Maybe you've been laid off. Maybe you just want another job. Yes, there are people hiring--but how do you find them?

Just as hiring managers need a strategy for hiring people, candidates need a strategy for looking for a job. Let's assume you're looking in an area in which you have experience. In that case, think about how you use these approaches:

Make sure you use social networks. You cannot afford to avoid LinkedIn, Facebook, or Twitter. Maybe you have another social network that you prefer. Fine, as long as your potential hiring managers and/or recruiters use that network. Your network might be a specific tool's user group, as long as you don't mind getting a job using that tool.

Expect to customize your resume for each job you apply for. This sounds like a lot of work. "Can't I just customize my cover letter?" Yes, you can, and that may not be enough. You aren't applying for a generic job; why send in a generic resume?

Consider using a couple of recruiters. Yes, the recruiters are having trouble, but they still have positions which require experience, especially a lot of experience.

Make sure you have thought about all of the ways to reach potential hiring managers.

Now, what do you do if you want to change jobs to something you don't have experience in?

Try getting some experience. You can be an unpaid intern (ok, a paid internship is even better, but don't bet on it), work on an open source project, or some other way that allows you to work with people (so you have references), and build your experience.

Expand your network as much as possible. If you want to change jobs in this economy you have to meet more and more and more people. You need to build a reputation as someone who can get things done. Now, do all the things I mentioned above.

It's not impossible to find a new job; it's just difficult. Start now.

Microsoft's Eric Nelson conducted a poll on how many businesses still use Visual Basic 6. It is hard to make sense of the statistics, since there was a built-in bias:

This survey was sent out to individuals we "suspected" had Visual Basic 6.0 heritage but it was also widely advertised through the MSDN Flash to UK developers.

In other words, only Windows developers were consulted, and those more likely to be using VB 6 were specially targetted. Some results:

  • 86.53% of respondents still program with VB 6
  • 87.62% actively maintain VB 6 applications
  • 46.81% have more than 100,000 lines of VB 6 code running
  • 42.58% plan to keep their applications in VB 6 for the forseeable future, even though most respondents believe that neither runtime nor the development environment is now supported by Microsoft
  • 51.76% plan to migrate their VB 6 applications to .NET (mostly to VB.NET, but a fair amount to C#), but are in no hurry to do so: most said "over the next three years"

See the original post for more detail. I'd like to know more about the wider picture - how many companies overall still use VB 6 - but although these figures are skewed I can well believe that there is a lot of VB 6 out there.

Incidentally, the respondents are correct in believing that the VB 6 IDE is no longer supported. Extended support ended in March 2008. However, note that Visual Basic for Applications, which partly shares the same runtime, remains part of Office and therefore is supported. The VB 6.0 runtime is supported at least until 10 years after the release of Windows Server 2008; see this paper for exactly what is and is not included.

I noticed that msvbvm60.dll, along with other VB 6.0 runtime files, is also in my beta copy of Windows 7. I guess that will nudge the support life for the runtime even further into the future.

The bottom line is that Microsoft would be crazy to release a mainstream version of Windows that could not run VB 6 applications. For the most part, laggard VB 6 developers are safe, though there could be third-party components that stop working. Another point is that VB 6 will always be 32-bit.

All this prompts a few observations.

First, if you have skills in VB 6.0, it looks like you will be in demand for a while.

Second, my own views on VB 6.0 are mixed. I recognize that it was a revolutionary and very capable tool; but if anyone is inclined to wax lyrical about its merits, I point them towards Verity Stob's Thirteen Ways to Loathe VB and Bring your Hatchet by Bruce McKinney. At best, it is a flawed platform.

Third, I do see the sense in leaving well alone in many cases. VB 6.0 is lightweight compared to .NET, and runs on a wider range of hardware. Migrating code is perilous unless you have rigorous unit tests; some quirk in VB may catch you out, so that ported code does not work in quite the same way.

It strikes me that there is little value in migrating from, say, a VB 6.0 client application to a .NET Windows Forms application. My instinct would be either to leave it be, or redesign it as a web application. Otherwise the risk is that your new ported application will be just like the old version, but slower.

Microsoft has a summary of the options here, which seems to promote the idea of hybrid applications, perhaps using the Interop Forms Toolkit to embed .NET controls in VB 6 forms. Maybe, but there is a danger of getting the worst of both worlds. That said, every case is different so there is little value in generalizing. The important thing is to have a technical and business rationale for the path you choose.

With unemployment figures predicted to reach 2.9 million by the end of the year, workers across the UK are under no illusion of the difficulties we all face in the year ahead. As IT professionals, we've already seen a spate of job cuts across the industry with more likely to follow as companies look to curb their spending and reduce overheads. Of course, opinion and impact varies widely from company to company so it's often difficult to gauge the full impact of something which is yet to run its course. That said, the IT industry is facing intense scrutiny at the moment and it's up to you as an IT professional to make yourself heard.

Whether you're just starting your IT career or you're a seasoned professional, the prospect of redundancies and lay-offs is undeniably daunting. The current condition of the IT market is in some ways similar to what's happening on a consumer level. As consumers cut down on "luxury" items, such as IT support and staff at the lower end of the technical spectrum, companies can save some cash. This in itself doesn't always solve the problem, in fact, we've seen instances of companies making cuts and then themselves recruiting for the same positions a relatively short time later.

Of course when it comes to redundancy, it's often out of the employees hands as to who goes and when. If you do feel under the cosh, then having a clear and open conversation with your employer will help matters. Though some companies find that redundancy is the only option, many do have other alternative solutions. Some may seek applications for staff to work flexibly, others may reduce or ban overtime, some may even retrain employees and move them on to different parts of the organisation. All these options are of course down to the discretion of your employer but nonetheless are important for you to be aware of.

Redundancy needn't sound the death knell for your IT career, it can in some cases allow people to assess their career options and take a different path. The picture for IT recruitment is still one of vibrancy, with specialist skills and flexibility still very much in demand. We've seen a number of former permanent IT workers now flourishing in the contract arena. For the right candidate opportunities will always exist, it's just a matter of being positive about your strengths and abilities. When you're suddenly pushed out of work, confidence can be hard to come by, but another role in the industry should not be out of the question, provided you have the determination and drive to find it.

OK, so you are out of work and you are not getting any interviews. How can you improve your chances of getting a new job quickly?

Well like anything in this World you've got to work at it. In fact your new job..is to find a new job! Yes, that's right, you've got to work at it 8 hours a day (at least!). So what does this "job" involve? First things first, give your CV a complete makeover, make sure that you have a really strong profile and set out some of your key achievements and skills clearly. Have a look at my earlier blog on this subject - Writing a Winning CV With your new (and hopefully much improved) CV, you can place this on a job board like www.cwjobs.co.uk. This should generate interest from recruiters. At the same time you should be actively responding to job advertisements on the the job boards. Start pro-actively calling some of the better recruitment agencies and build relationships with several recruitment consultants. Try to identify Consultants who either specialise in your field or frequently advertise jobs in your field. Many Recruitment Consultancies have teams who focus on particular sectors (ie. Legal, Retail, Telco, etc.) while others focus on specific roles. (ie. Business Analysts, Developers and so on) either way it makes sense to work with Consultants who understand what you do and will be actively canvassing employers for your kind of job. Once you identify the right Consultants, offer to go and see them. Even if you meet up for coffee for ten minutes it's worth meeting face-to-face. Recruiters will be impressed by your motivation and will be more likely to think of you when the right job comes up.

What else can you do to improve your chances? Start thinking about the companies you would like to work for. Who were your last employer's competitors? What other companies or organisations operate in the same field? Try sending your CV to these companies on a speculative basis.

Don't forget to network, pull out that little black book (or Blackberry) and get in touch with all your old contacts and make sure that they are all aware that you are available. You might also consider attending industry events. There are a surprising number of free IT Conferences that you can attend which provide excellent opportunities for networking, have a look at http://www.events-on.net/ for the latest conference news and don't forget to take your CV!

Good luck with you new job!

Hyper-V tips and gotchas

February 17, 2009 11:04 AM

Hyper-V may not be the best virtualization platform out there, but it does not have to be. Its unique selling point is deep integration with Windows Server 2008, complete with an easy to use management console. I've been using it extensively, though on modest hardware, and overall I'm impressed. Enable the hypervisor in the BIOS, install the Hyper-V role, create a new virtual machine, and go. I've used both Server 2008 and Windows 2003 as guest operating systems, and everything works as advertised. You can assign an .iso image to the virtual DVD drive, which is handy for me as an MSDN subscriber, since I test new Microsoft software by downloading it from there. A great feature is that you can backup both host and guests in one shot, even when the machines are running. Provided that the Hyper-V integration services are installed in the guests, the host backup will talk to the Volume Shadow Copy Service (VSS) in the guests to ensure the integrity of the backup.

hyper-v.png

Hyper-V is handy for Windows developers since you can run servers like SharePoint and Exchange without the clutter and expense of real boxes. Once the new machine is up and running, I generally connect through remote desktop on another machine, and it looks just like any other remote Windows server.

That said, there are a few snags with Hyper-V. While performance is generally good, I've found that disk I/O can get slow. There are a couple of things you can do to mitigate this. One is to be generous with RAM - more memory means less disk access. Second, Microsoft states that a fixed virtual hard drive is faster (though less convenient) than a dynamic virtual drive, which is the default. It is possible to convert from one to the other, though it is a slow operation.

Another issue is that because of the VSS integration, you should not attempt to back up simultaneously from the guest and from the host. It would be easy to do this by accident through scheduled backups, as Microsoft also recommends that you should do both kinds of backup for critical servers.

Using the supplied Windows Server Backup in a Hyper-V guest is awkward, since drives attached through USB or eSATA are not recognized automatically in the guest. You can backup to a network share or a second mounted virtual hard drive. I've heard that this problem is fixed in Hyper-V R2, which you can currently download as a beta.

The subject of Hyper-V and domain controllers is rather complex. Sandy Berkouwer has two separate posts which are helpful. Actions like pausing or saving state in a domain controller can cause problems, and Berkower suggests that having at least one physical domain controller is wise. Microsoft warns against having the host machine joined to a domain managed solely by a guest.

Another issue is that if you are unlucky, and are using snapshots (giving the ability to roll back to a previous time), Hyper-V can occasionally revert to an earlier time without being asked. If this happens, shut the machine down right away and see if you can recover it, as I did, by restoring a backup and doing a manual merge with the snapshot differencing file. 

Microsoft appears to be handling the Linux integration services with all the enthusiasm you would expect. You can find the services here - though you have to sign in with a Live ID. Only Suse Linux Enterprise Server is supported, and the site forum, which is noticably lacking official Microsoft participation, includes telling comments. Why does the code have build dependencies on Xen (an open source alternative to Hyper-V), and only works with version 2.6.18 of the Linux kernel? However, note this comment from a user:

For anyone not aware, doing even light disk IO under a hyper-v linux guest without linux_ic will chew on your cpu the entire time, which makes it very unusable for any server that's not mostly idle.

The good news on the Linux front is that Microsoft has just announced an agreement with Red Hat to support Red Hat Enterprise Linux 5.2 and 5.3 - 32-bit and 64-bit, but apparently uniprocessor only - complete with integration services; we have to hope this works out better than the Suse partnership has, so far. It deserves some effort from Microsoft, since running a LAMP stack on a Windows Server machine via Hyper-V is useful.

Despite some hassles, Hyper-V is invaluable, and there is now little excuse for wasting power and space on numerous lightly-used servers. Virtual servers have many advantages, in cost, in ease of management, in flexibility, and in backup and restore. My guess is that they will become the norm for test as well as for production, hosted either locally or in the cloud.

When you look for a job, what do you look for? Some people look for stability or a large/small company or an entrepreneurial approach, or something else. I look for something fun and a lot to learn.

The key is that I'm willing to look for any number of fun things: the product, the language, the OS, whatever. But I have two distinct criteria: I need to have fun. And, I need to be able to learn from other people on the job.

What do I mean by "have fun"? For me, having fun means to stretch my brain and avoid drudgery. I don't mind a repetitive job if I have the opportunity to automate it. But, I don't want to do the same thing day in and day out. I need to learn enough so I don't have the same year of experience over and over again. (See What Was Your Last Year of Experience? What Will This Year's of Experience Be?)

Who can I learn from? I expect to learn about management things from my manager, and I expect to learn about technical things from my colleagues, all over the organization. I once took a job where the previous management had deliberately hired the lowest-cost folk, expecting them to be the least capable. A majority were not very capable. I found it frustrating.

When you have fun and learn from people across the organization, you have an opportunity to get a great job, because you can collect a wide variety of data from others telling your potential employers how good you are. See I have a document like this and so should you.

Do you have criteria for your next job? You don't have to have mine, but I suggest you think about what would make your next job your best. 


The last decade has seen huge investment in ICT for schools, with a figure approaching £5bn being dedicated to technology and innovation. And with a further £857m earmarked for schools in the next three years, Britain could in many ways be seen as leading the charge with technology in the classroom. Some 99% of schools have made the switch to broadband, and over half have interactive whiteboards in the classroom. Add to this the successful 'Computers for Schools' initiative, which has already benefited some 100,000 young people in the UK as well as Civica's recent deployment of IT services to a number of secondary schools; we can soundly say the education sector is a thriving area of opportunities for IT professionals.

It's often noted that the public sector has some great prospects for IT professionals and the field of education is no different. With budgets available and long-term investment planned by the Government, the education sector remains one of the few that is actively recruiting for skilled IT workers, even in therse difficult times. Educational software packages, school hardware and increased investment in school technology infrastructure, present a number of job openings for both graduates and seasoned IT professionals.

In terms of breaking into the industry, education is similar to many other areas of the public sector. Having relevant experience working in education will of course give you an advantage but it isn't the be all and end all for prospective employers. Accreditations go a long way in any IT job application so highlight any that you already have or consider investing in a few relevant courses to get a few! There are several key players in the education technology market and even some that cater soely to the education sector; as such there will be opportunities available for the right candidate.

With the ever changing nature of the IT industry, so called 'growth areas' tend to come and go on a regular basis. However education appears to be one sector which bucks the trend, making it the place to be in IT circles.

Using the following simple techniques will ensure that your CV comes up in searches and that your skills and experience match the recruiter's search string.

When writing your CV, think carefully about your choice of words. If you are applying for a job advertised on one of the job boards such as www.cwjobs.co.uk then look carefully at the words being used in the advertisement and utilize these same words in your CV. I'm not suggesting that you mention skills and experience that you don't have but it does make sense to use the same terminology.

Remember that if your CV is sitting on one of the job boards, or perhaps on a recruitment agency database (along with thousands of other CVs) then these are the words and terms that a recruitment consultant will probably use to search for CVs.

For example, if you are looking for a position in IT as a Project Manager then a quick scan of the on-line advertisements for Project Managers might throw up a number of words and phrases that are common to all. These terms may include:  Project Manager, Project Management, Prince 2, life-cycle, budget, change control, risk register and Microsoft Project. These are the words that a recruitment consultant may use to search for Project Managers. Make sure that you include all the appropriate words and phrases and all their variations in your CV.

Using the right job title is also another important factor. Many organisations use job titles that are meaningful and relevant within the context of their own business but which would not be used very commonly in the outside world. If your CV records that you have been (for example) a "Senior Critical Situation Manager" when in fact you are looking for a position as a "Problem Manager" or "Service Manager" then be sure to use this job title in your CV, perhaps in the Profile section.

I have seen many instances of Recruitment Consultants searching for candidates on a CV database and "missing" some of the best candidates simply because they didn't have the "right" job title on their CV. Identify all of your target job titles  and ensure that you use all of them in your CV. For example Analyst Programmer, Software Engineer, Software Developer and so on.

When listing your IT technical skills you should also try to use all the variations of terms that a Recruitment Consultant is likely to search on. For example if you have good Java ME skills don't forget to use "Java Micro Edition" as well. Remember that Recruitment Consultants can't be experts in every technical field and if their client's job specification indicates a requirement for "Java Micro Edition" that's probably the term they will use in their search.

Finally remember that Recruiters will probably be viewing your CV on a computer screen so make sure that you get these important words and phrases at the beginning of your CV and not hidden away at the bottom of the secord or third page.

Using these simple techniques will ensure that your CV comes up in searches and that your skills and experience match the recruiter's search string.

It's that time of year again, when many of us "resolve" to do something different for the new year. But, most of the time, our resolutions don't take. Instead of a broken resolution, try an action plan. Here are the steps to creating an action plan.

Write down the goal you want to achieve. You must write an action plan down. No talking it out, although if you would like to discuss it or get feedback on it, that's ok. But you can't just say "here's my action plan, waddaya think?" You have to write it down. So, start with a goal.

Make the goal achievable. If you, like me, have some weight to lose, that's a good goal. Just be sure the goal is achievable by you in a specific time period. My goal is 10 pounds (5 kg) a year. That's it. I've been successful with small goals like that for losing weight. If your goal is to learn a new software language, you might have a goal of writing two small programs in a month, and a larger program in three months, and go from there. I like thinking of the acronym SMART when writing down goals: Specific, Measurable, Achievable, Relevant, Time-boxed.

Write down the first action you need to take. If your goal is something about fitness, maybe the first action is "Investigate several gyms in my area." You can't decide on one if you don't investigate several. Make sure that first action is something you can do in a limited time. If it's too big, you won't do it.

Write down the next few actions you need to take--just for the next couple of week. Also, be sure each of them is a small action, something you can finish within a day or so. It's best if you can do something small every day.

You want to have something every day for your action plan so you can't forget about it, and so you can achieve your goal by changing your behavior. As you finish those actions, write down more actions, keeping them small and achievable.

Monitor your results. After each action, ask yourself, am I getting closer to my goal? Did I do something in service of my goal? Does this action change my next action?

Now you're on the road to changing your behavior and having a resolution that will stick.


Current Vacancies from CWJobs

(* Required field)










Preferred format