You can even debug into the incomprehensible Google library code if you feel so inclined - just press F11 to step into the code. You also get windows for autos, locals, watched variables and call stack; and there is an immediate window.
As public awareness and government agenda put pressure on companies to adopt more environmentally sound policies, opportunities for those who fancy “saving the world” are on the rise. Green technologies such as videoconferencing, virtualisation and power management are all hot topics at the moment and as adoption rates increase, demand for IT staff to maintain, run and manage these systems has risen accordingly.
Green IT has come to prominence over recent years as businesses look to cut energy costs and the need for business travel. Many organisations have already begun to implement green initiatives; with a number of larger companies even having dedicated CSR (Corporate Social Responsibility) teams to oversee the companies green goals. For the business the benefits are clear, allowing them to reduce overheads, cut carbon emissions and communicate their green status to their customers and stakeholders.
For IT professionals, the benefits are also there for the taking. As companies invest in a greener future, they need staff with the right skills and attributes to handle and oversee the smooth running of new technologies and new systems.What is also encouraging, is that the green IT market is constantly expanding, meaning a steady stream of jobs should be available in the years to come. If you are thinking of taking a fresh direction in your career, getting up-to-speed on green IT could set you on the right path to better, greener things.
Confirm the date and time of your interview and make sure you get directions if necessary. Check out the travel time either by road or public transport. Make sure you allow for the time of day. If necessary make a dummy run at the same time so that you are completely familiar with the route. Aim to arrive at least 15 minutes before the scheduled start time and then allow another 15 minutes just to be sure. There is nothing worse than arriving late for an interview!
Having sorted out the logistics now you need to start your research into the company or organisation. One of the first questions that interviewers often ask is "What do you know about us?" Have a good look at the company web site but also use a search engine to research as much background information as you can. Having this information will ensure that you can answer that question confidently and also give you the opportunity to ask some smart questions of your own. "I see you've recently opened a new call centre, what CRM package are you going to use?" sounds a lot better than "What time do you finish work on Fridays?"
Make sure you also research your interviewer(s). You may find a profile (or even a CV) on the company web site or try searching for the interviewer's name on the internet. It's important that you know as much as you can about your interviewer and their background as this will enable you to predict the types of questions they will ask and how you should pitch your responses. For example if your interviewer comes from an IT background similar to your own then you can expect a technical grilling but what if your interviewer comes from a finance background? Clearly you will need to pitch your responses at a different level.
Try to put yourself in the interviewer's shoes. If you were interviewing a candidate for this position what questions would you ask? Try to prepare strong responses to the most likely questions.
If you are working with a recruitment consultant ask them to provide you with a thorough briefing. They may have had candidates who have previously attended interviews with the same interviewer. What questions were they asked? If they were unsuccessful what was the feedback
Try to find out what the format of the interview will be. Will this be a formal/informal interview? Will there be just one interviewer or a panel? Might you be required to make a presentation? Should you take examples of your work? Will there be any kind of technical test?
Remember that interviewers (particularly from HR) often ask "Competency Questions". The theory behind competency based interviews is that past behaviour is often the best indicator of future behaviour. So these questions will often start with "Tell me about a time...." or "Can you give me an example...?" Try to think carefully what competencies are likely to be relevant to the job. If you are lucky they may be listed in the job specification.
If you decide that the competencies will include:
leadership, communication, influencing skills and innovation
Then make sure you that you have a store of good examples of your experience in each of these areas.
The best way to structure your response to competency questions is to use the STAR technique. STAR is an acronym for Situation - Task - Action - Result.
So for example if the interviewer asks:
"Can you give me an example of your ability to provide innovative solutions to problems?"
Using the STAR technique you could answer:
I was the leading a team at XYZ company (SITUATION). I was asked to come up with a plan to improve communication within the project management community and provide a central resource for project management tools and templates (TASK). I created an intranet site which contained all the necessary documents plus a forum for the project managers (ACTION). This has proved extremely successful and I recently received an award from the company congratulating me on the success of this project (RESULT).
Note that you should use I (not we!) in your answer and that this response follows the STAR format, - in simple terms "it's a story with a happy ending"
In preparing for your interview try to prepare as many of these "stories" as you can that will be relevant to the role.
Finally be positive! Taking this amount of care with your interview preparation will give you a head start and ensure that you perform at your best on the big day.
There is a kind of Windows 7 fever sweeping the Web right now. Some observers are getting carried away:
As a person who performs almost every computing task on a Mac and tells anyone who will listen that at this point, the average consumer should be using a Mac instead of a Windows machine because of security and usability, I'm starting to prep myself for the single moment that I thought would never come: I'll be using a Windows 7 machine as my main computer and telling anyone who will listen that, believe it or not, using the latest Microsoft operating system really is worth it. [Don Reisinger]
I've spent a lot of time in Windows 7 these last few weeks, and in some ways I see what he means. It has a smoothness and elegance that is lacking in Vista, though it is there to some extent in Server 2008. But let's be clear: the popular view that Vista is rubbish and Windows 7 is great does not stand up to close analysis, for one simple reason. It is just not sufficiently different. Microsoft actually makes a positive of this characteristic, explaining how preserving the core architecture of Vista ensures good application and driver compatibility and therefore a smooth upgrade.
What about Windows 7 versus the Mac? I agree that Windows 7 is superficially more Mac-like; and more important, that the factors that made Vista such an unpleasant experience for some (not all) early adopters will not apply. I'm thinking of things like laptops that were underspecified, or had buggy drivers, or barely adequate graphics hardware, or that were weighed down with so much foistware that Windows would hardly run. However, other factors that make users prefer Macs will not have changed. There is the control Apple exerts over both hardware and software; its design excellence; the fact that Apple is less tolerant of legacy software, whereas Microsoft has Windows jump through hoops to keep it running,adding complexity and inconsistency; and there is the absence on the Mac of the culture of chaos that afflicts Windows. I'll leave aside religious arguments about Unix vs Windows, though it is a matter of record that OS X has to date proven far more secure, for whatever reason.
Let's ask some awkward questions. Will a substantial number of Windows 7 machines fall victim to viruses, worms, trojans and botnets? Almost certainly. Will Windows 7 from time to time flummox users with obscure errors like "the system could not find the file specified"? Almost certainly. Will some Windows 7 machines be built down to a price and be sold with obvious design flaws and insufficent attention to quality? Almost certainly. Will some vendors wreck the sweet install experience Microsoft has created by imposing their own clunky utilities and third-party trialware on top? Almost certainly. Will the Windows 7 event log become populated with perplexing entries like "The Workstation service terminated with the following error: The redirector is in use and cannot be unloaded." (plucked from my Windows 7 beta 1 laptop)? Almost certainly.
Let me add that I realise how smooth and reliable a well-managed Windows machine can be. Further, while I have had some frustrations with Vista it has always been stable for me and I have never wanted to go back to XP. Vista, then, is better than its reputation; Windows 7 is better than Vista but will have trouble living up to the proclamations made by its more enthusiastic admirers.
Microsoft has published development guidelines for Windows 7 applications. They make interesting reading even if you don't plan to develop specifically for Windows 7 - after all, it has only just gone into beta - because they presumably represent Microsoft's latest thinking about how Windows applications should behave. In fact, I don't see much in the document that is specific to Windows 7. Arguably many of the problems with Windows are a result of badly-behaved applications, so I'd suggest that it pays to follow the guidelines unless there is a good reason to do otherwise. Most are applicable to internal apps as well as publicly available software. You can read them in detail by following the link, but here is a quick summary.
First, there are three "policies":
1. Don't be malware or spyware. Goes without saying; yet even supposedly reputable applications stray over the line sometimes, for example by phoning home with user data without proper explanation or consent.
2. Do not modify Windows Resource Protection files. This is about not installing system files except with official Microsoft redistributables.
3. Sign up to receive crash data from Windows Error Reporting. Probably not relevant to internal applications, where users soon let you know about crashes, but a great idea for anyone distributing software more widely.
Next, 10 guidelines. Note that there can be good reasons for breaking the guidelines; Microsoft's logo rules allow for waivers in these cases.
1. Install and uninstall cleanly, and never force a reboot at the end of an installation. The guideline doesn't address the question of how much user data to leave behind on uninstall. Most applications leave user data in place; but occasionally users reinstall to try and fix a configuration problem that is in the user data.
2. Install to the correct folders. Apps in Program Files, for example, and user data in AppData. An interesting twist here is that if your app is available for all users on the machine, then it cannot write user data during the install, but only on first run:
Since the install potentially elevates to a different user account during a "per machine" install, there is no correct user location to store data at the time of installation.
3. Support x64. That doesn't mean a 64-bit version, just that it works OK on 64-bit Windows.
4. Follow User Account Control (UAC) guidelines. This is the security feature in Vista and Windows 7 that means even local administrators run with limited permissions. I have seen app vendors advise customers to turn UAC off for the sake of their application. UAC is a security feature, and Windows insecurities afflict all of us in the form of viruses, spam and other malware, so I reckon we should support Microsoft's efforts and work with UAC rather than against it.
5. Do not load services and drivers in safe mode. For obvious reasons - safe mode is meant to be safe.
6. Digitally sign all executable files - both DLLs and EXEs. Worth doing, if only to avoid the user seeing ugly warnings about unknown applications.
7. Do not prevent an installation or application from launching because of version checking. This is an interesting one. If you write and test your application for, say, Windows Vista, it seems reasonable to block it from running on Windows 7, which you haven't yet been able to test. Unfortunately this kind of thinking causes major problems for users, who upgrade Windows and find that it "breaks" their applications. However, you are allowed to check for a minimum version - after all, if you know your app won't work on, say, Windows NT 4.0, there is little point in permitting the user to try.
8. Listen for system shutdown messages, prompt to save data if necessary, and avoid unnecessary reboots.
9. Support multi-user sessions. This means that multiple instances run by different users have to be isolated from each other.
10. Don't crash. Pass Application Verifier checks (Microsoft's utility for finding heap corruption and other common problems).
In the past I've read Microsoft logo guidelines that have struck me as placing unreasonable burdens on developers; but these seems concise and sensible. I'd be interested in opinions - has Microsoft set attainable goals, and is there anything here you violently disagree with?
If you apply for a job these days the chances are that you may be applying through a Recruitment Agency. What should you expect from an agency and more specifically from a Recruitment Consultant?
Let's assume that you have applied for an IT position on http://www.cwjobs.co.uk/. You should receive either an immediate automated response or a personal response within a few hours acknowledging that your application has been received. Alarm bells should start ringing if you don't receive any kind of acknowledgement.
How long should you wait before following up? I would suggest two working days, however if you feel that you are uniquely well qualified for the job then do call sooner.
Assuming that you have the right experience then a professional Consultant will want to interview you for the job. Treat this "agency interview" in exactly the same way as you would a "proper" interview. The Consultant may well have a long list of up to 10 candidates and will want to see who will be the best fit for his client. Do try to attend face-to-face as this will always give you an advantage over candidates who can only commit to a telephone interview. Make the effort to attend the agency interview and you will demonstrate your motivation and commitment. This may also make you think twice about which jobs to apply for. I suggest that, in the current job market, you only apply for jobs where you have all the skills required. If the advertisement says "in-depth experience of developing mobile phone software using J2ME" chances are that your C++ experience is not going to be right for that particular job!
This agency interview can serve a dual purpose as once you have convinced the Consultant that are right for the role he or she will be able to give you a thorough briefing on what to expect at the proper client interview. Remember that the Consultant may have had several candidates who have already attended interviews for similar roles with the same client. The Consultant can brief you in detail on the organisation, the working environment, the other people in the department and most especially the interviewer or interviewers. What sort of interview questions can you expect? Will this be a formal or informal interview? Will you need to make a presentation?
If the Consultant now confirms that you have been short-listed, make sure that you get his or her assurance that your CV will be sent to the client. Make a note of exactly when your CV was submitted together with the name of the client. Don't give your permission for your CV to be sent anywhere unless you know where it is being sent. This can lead to potentially embarrassing instances of your CV being received by the client from two different agencies. Keep a record and don't let this happen. I recommend that you maintain a simple spreadsheet of the jobs that you have applied for, when you applied, the name of the Agency and Contact and perhaps a note of the version of the CV that you submitted. Ask the Consultant when you can expect a decision regarding an interview and put a reminder in your schedule.
At this time the Consultant should also ask to see your passport or proof of identity. I know that many candidates are concerned about identity theft but this is a genuine requirement of the Employment Agencies Act. Check that the agency is a member of the Recruitment & Employment Confederation (REC) who will also be able to re-assure you and confirm what information you are expected to provide to a registered Recruitment Agency. Apart from checking your identity the Agency will want to see proof of your right to work in the UK if you are not a British or EU Citizen. They should also ask for copies of relevant qualifications and details of your references/referees.
Hopefully all of this should lead to a face-to-face interview (or interviews) with the client and eventually a job offer. Your Recruitment Consultant should then be able to guide you through the whole offer process. You should be completely open about your current earnings and be absolutely clear about your salary expectations in the new role. There is nothing worse than getting an offer and then finding that it is for much less than you had expected. Be up front about this and make sure that the Consultant understands exactly what salary and package you are looking for and there should be no confusion.
Your Consultant may want to stay in touch even after you start your new job. It's always useful to have a good contact in the recruitment industry, you never know when you might want to recruit some staff for your team or even look for another job!