I was just wondering, if anyone can answer a few questions regarding MCP status for retired exams and unsupported products.
We interviewed a candidate and every other word from their mouth was, "I'm an MCP!".
When questioned about which exams they took, they answered VB6 (but didn't specify specifically which VB6 exam) and Sql Server 6.5 or 7 Design Concepts (They couldn't 'recall' which Sql Server version Exam they took?)
I know that Sql Server 7 was retired from main stream suport in March, and I think VB6 has to be at least scheduled to be retired.
This candidate couldn't answer any real questions of substance regarding anything O-O, and were arguing that frameworks in general were 'ridiculously over-complicated', and that all data access in .NET should be done using Vb.NET's Data Environment. Which struck
me as odd on a few different levels,
1) he didn't realize that tight-coupling is bad
2) VB.NET doesn't have a 'Data Environment' like VB 6 did.
3) He said VB6 executes faster than VB.NET
4) He didn't know that C# was a .NET Language, he said that .NET simply referred to VB.NET
5) He didn't even know what immutable was, yet was arguing the best practice of NOT initializing string variables in .NET
6) He couldn't tell the difference between C++ code and VB6 code when shown it. Shouldn't a VB6 MCP know the difference between what C++ and VB6 looks like?
All these things (among others) raised a few red-flags to me.
The business ppl that interviewed te guy love him, but I am trying to call shenanigans. What do you all think of what I have said here regarding all this?
Is his MCP certification even still valid, when do those things expire?
Thanks for your insight and feedback.
![]()
-
-
One last thing: ask him what design patterns he used in his last job, which ones he likes to use, and why.
Should prove interesting. -
phreaks wrote:
when do those things expire?
MCP (or MCSD, or MC*) never expires. So it's important what comes after the initials.
You already know that MCP is an extremely easy status to get.
I know why the biz guys love your candidate. He talked about how unpredictable the software development process is. He talked about how software should be simplified. He talked about the primadonas in software development. He talked about how business goals should be balanced against specs & requirements. He talked their language.phreaks wrote:
The business ppl that interviewed te guy love him
I'm not saying those are bad things to be talked about, but think about what you're hiring the guy for. He obviously has people skills, but would he be technical enough for your position?
I sometimes feel the software dev process is overly complicated, but at the end of the day, you need coders to code, and biz people to um... biz, you know?
-
Run Away! Run Away!!!!
Seriously... MCP status is highly overrated.. And I'm a Charter Member MCAD (earned it when recovering from Gall Bladder Surgery, no less... ! ). I also have an MCDBA and an MCSD. Merely passing one test (or earning an advanced cert, for that matter) doesn't mean you're a good coder.
That being said, my MCP status is still valid despite the test being retired. If you want, I"ll share my transcript for ya to see.
Of all your points listed, I think one of them is actually correct, although he probably couldn't explain why... (Ask him.. ! ) I would think that VB6 code DOES execute faster than VB.NET code... Only because VB6 isn't managed.. But that that's a BROAD genralization, and depends upon what is coded, how it is coded, etc.. I'd say well written .NET code and beat badly written VB.6 code. Anyone disagree on my original point?
And if you can't tell the difference between C++ code and VB 6 code (shakes his head)... Don't let the door hit him in the rear.
For kicks, ask him if whether or not he thinks the VB 6 test he took might have been the Web Service one..
Lastly, get him to give ya a transcript of his scores.. He can get it at www.microsoft.com/mcp and have him log into the MCP site.
EDIT: Removed two ridiculous smiley faces... -
Jack Poison wrote:One last thing: ask him what design patterns he used in his last job, which ones he likes to use, and why.
Should prove interesting.
Thanks for your feed-back.
As for the design patterns question, I did and he looked at me like I had 5 heads. He had no idea of what a pattern is, which is very troubling for me as I am very pattern centric.
Also, he said that it cost $4,000 for his MCP, but I just looked at the link you provided and it says the exams are about $125 each.
Also, as for the VB6 executing faster than .NET, to be specific he said that VB6 retrieves data faster, and when asked further about DataSets, he indicated that looping through DataSets is how you do Data Access in .NET because the DataSet is the new RecordSet.
I would disagree and use DataSets as objects in an OO way, and use a DataReader if I actually needed to do any looping.
So many things stink to high heaven, but like I said, the higher up's (Non-techs) love the guy. -
Minh wrote:

phreaks wrote:
when do those things expire?
MCP (or MCSD, or MC*) never expires. So it's important what comes after the initials.
You already know that MCP is an extremely easy status to get.
I know why the biz guys love your candidate. He talked about how unpredictable the software development process is. He talked about how software should be simplified. He talked about the primadonas in software development. He talked about how business goals should be balanced against specs & requirements. He talked their language.
phreaks wrote:
The business ppl that interviewed te guy love him
I'm not saying those are bad things to be talked about, but think about what you're hiring the guy for. He obviously has people skills, but would he be technical enough for your position?
I sometimes feel the software dev process is overly complicated, but at the end of the day, you need coders to code, and biz people to um... biz, you know?
Ya, seriously, every other word out of his moth was I'm MCP this, and I'm MCP that. I wanted to throw up. He is being considered for a lower level than I, and no he definately couldn't do my job.
What scares me is that he'll be able to do his job in the capacity that he can, but that isn't really a good thing.
He also advocated to the business people that using .NET is a bad idea and that they should really be using VB6 for all new development, which the business ppl loved again.
EDIT: Almost forgot, he also told me that VB6 was completely O-O, but he didn't know what the word polymorphic meant... -
I don't think the question is whether or not this guy has MCP status.
If you're a VB6/MSSQL 7- shop, then give him a VB6/MSSQL 7- technical test. If you're not a VB6/MSSQL 7- shop, then don't bother calling him back.
Apparently the old chap wants to go the way of the dinosaur. If he hasn't learned that software development is for the career learner then maybe he doesn't belong in the industry or maybe he likes spending most of his time maintaining legacy systems. I've been doing this for over ten years so I like to work the cutting edge and leave the grunt work to juniors. -
phreaks wrote:Thanks for your feed-back.
As for the design patterns question, I did and he looked at me like I had 5 heads. He had no idea of what a pattern is, which is very troubling for me as I am very pattern centric.
That said, I think if I were asked with this question, unprepared... I would probably stun and have my brain want blank.
Not because I have no design pattern, but because I have no idea where to bring talking with. I'd rather be given real assignment and have the interviewer observe how I work it out.
-
phreaks wrote:

Jack Poison wrote: One last thing: ask him what design patterns he used in his last job, which ones he likes to use, and why.
Should prove interesting.
Thanks for your feed-back.
As for the design patterns question, I did and he looked at me like I had 5 heads. He had no idea of what a pattern is, which is very troubling for me as I am very pattern centric.
Also, he said that it cost $4,000 for his MCP, but I just looked at the link you provided and it says the exams are about $125 each.
Also, as for the VB6 executing faster than .NET, to be specific he said that VB6 retrieves data faster, and when asked further about DataSets, he indicated that looping through DataSets is how you do Data Access in .NET because the DataSet is the new RecordSet.
I would disagree and use DataSets as objects in an OO way, and use a DataReader if I actually needed to do any looping.
So many things stink to high heaven, but like I said, the higher up's (Non-techs) love the guy.
Not to give the guy too much, $4,000 might have been somewhat close... Back when he took the tests (and I did), the tests were $100.00 a piece, but the training classes for the tests (at the local
training place) ran in the thousands.. (No, I didn't take them..)
Regarding "Dataset is the new record set..": Doh!!!!
Although I wouldn't use a DataReader for looping. DataReaders are forward only / Read Only, if I recall correctly. But looping around them is probably ok (using a loop for different Data Reader objects).
I might be wrong on that last one: I've been using Data Sets lately, but remember that performance is better with the DataReader.
Lastly, I feel your pain with the "higher-ups"... I have some personal stories similar to yours.. And if you want a non-personal one, about a guy's first day (who is similar to your dude), check this out...
Link -
cheong wrote:

phreaks wrote: Thanks for your feed-back.
As for the design patterns question, I did and he looked at me like I had 5 heads. He had no idea of what a pattern is, which is very troubling for me as I am very pattern centric.
That said, I think if I were asked with this question, unprepared... I would probably stun and have my brain want blank.
Not because I have no design pattern, but because I have no idea where to bring talking with. I'd rather be given real assignment and have the interviewer observe how I work it out.
And if you could at least explain the difference between a function and a sub-routine, than I might tow-the-line, and at least give you the benifit of the doubt. A VB6 MCP that doesn't know what distinguishes a function from a sub in VB6 AND can't tell me which code is C++ and which code is VB6 by reviewing it just sounds fishy, even without considering everything else. -
cheong wrote:

phreaks wrote: Thanks for your feed-back.
As for the design patterns question, I did and he looked at me like I had 5 heads. He had no idea of what a pattern is, which is very troubling for me as I am very pattern centric.
That said, I think if I were asked with this question, unprepared... I would probably stun and have my brain want blank.
Not because I have no design pattern, but because I have no idea where to bring talking with. I'd rather be given real assignment and have the interviewer observe how I work it out.
Design Patterns, by definition, are recurring, proven solutions to common software problems. If I were interviewing you, and you have no idea of a single design pattern, you wouldn't be asked back for another interview, plain and simple.
Even a simple design pattern, like a Singleton, would satisfy me, as long as they could point out what issues there are with them (Namely, when using them with multiple threads).
I think you're confusing this with something else. -
Jack Poison wrote:

cheong wrote: 
phreaks wrote: Thanks for your feed-back.
As for the design patterns question, I did and he looked at me like I had 5 heads. He had no idea of what a pattern is, which is very troubling for me as I am very pattern centric.
That said, I think if I were asked with this question, unprepared... I would probably stun and have my brain want blank.
Not because I have no design pattern, but because I have no idea where to bring talking with. I'd rather be given real assignment and have the interviewer observe how I work it out.
Design Patterns, by definition, are recurring, proven solutions to common software problems. If I were interviewing you, and you have no idea of a single design pattern, you wouldn't be asked back for another interview, plain and simple.
Even a simple design pattern, like a Singleton, would satisfy me, as long as they could point out what issues there are with them (Namely, when using them with multiple threads).
I think you're confusing this with something else.
Crap, I would have been somewhat pleased if he would have said a Form, although I guess it really isn't a pattern, if he would have attempted to say something, anything, I would have been happier than the response I got.
And seeing the position he was being considere for I wasn't really expecting him to get into a detailed discussion about orchestrators, MVC, MVP, Models, Strategies, Frames, or anything other patterns.
I guess my real issue is that the guy was arrogant, but yet didn't know much. He really rubbed me the wrong way , had a major attitude and no expertise to back it up, but argued about things he clearly has no grasp of. -
Jack Poison wrote:
Although I wouldn't use a DataReader for looping. DataReaders are forward only / Read Only, if I recall correctly. But looping around them is probably ok (using a loop for different Data Reader objects).
Link
Sorry, Phreaks...
I realized at 5am this morning what you were saying. I was thinking of doing looping items within specific data being returned from a datareader.. You were talking about going through a Data Reader one time to store / build / etc.. (LOOPING THROUGH).
My bad.. You are completely correct.
-
Jack Poison wrote:
Design Patterns, by definition, are recurring, proven solutions to common software problems. If I were interviewing you, and you have no idea of a single design pattern, you wouldn't be asked back for another interview, plain and simple.
Even a simple design pattern, like a Singleton, would satisfy me, as long as they could point out what issues there are with them (Namely, when using them with multiple threads).
I think you're confusing this with something else.
The major problem is, because I was not a computer major student(I'm a Maths. & Stat. one), even though I've been already using some of them, I have no keyword to spell it out. (e.g.: I heard and know what singleton and factory is and have been using prototypes heavily. But I have no idea that they're valid answer keyword to your question, because I don't relate these word to that meaning.)
Seems that I must fail this question if I gone unprepared.
-
A couple of books might be worthwhile -
"Design Patterns" (Gang of Four)
"Patterns of Enterprise Applications Architecture" - (Martin Fowler)
Plenty of others, but I enjoyed these the best, the first one more of a "classic", second one more practical.
-
Which ADO.NET object you use is based off of what you are using it for. If all you are doing is spitting records in a grid view feed a DataTable to a DataSource Object via a DataReader. If you want full CRUD capability use a wrapped DataSet. The reason I said wrapped is your not looking to the future otherwise. LINQ will change how the Data Layer and Business Objects interact. If you don't use a DataSet as a Business object directly you can always divorce it from your model. (via a Provider Pattern) the DataSet is just getting you to and from your data you could wrap it in an interface and then just change the object that is wrapped later.
IDALToStorabale MyDALObject = MyDataAccessObject as IDALToStorable;
if(MyDALObject != null)
{
//Use Interface Methods
}
else
{
//Slap bad programmers hand (throw exception?)
}
This allows you to change the type of MyDataAccessObject without break code in your Business Object Layer. Limits interaction between layers to predecided contract interfaces.
So do you guys pay for relocation:)
-
odujosh wrote:Which ADO.NET object you use is based off of what you are using it for. If all you are doing is spitting records in a grid view feed a DataTable to a DataSource Object via a DataReader. If you want full CRUD capability use a wrapped DataSet. The reason I said wrapped is your not looking to the future otherwise. LINQ will change how the Data Layer and Business Objects interact. If you don't use a DataSet as a Business object directly you can always divorce it from your model. (via a Provider Pattern) the DataSet is just getting you to and from your data you could wrap it in an interface and then just change the object that is wrapped later.
IDALToStorabale MyDALObject = MyDataAccessObject as IDALToStorable;
if(MyDALObject != null)
{
//Use Interface Methods
}
else
{
//Slap bad programmers hand (throw exception?)
}
This allows you to change the type of MyDataAccessObject without break code in your Business Object Layer. Limits interaction between layers to predecided contract interfaces.
So do you guys pay for relocation
We don't really use DataSet's, we use model's that we generate from CodeSmith.
And I can't really recall the last time I had an actual need to iterate any data object, whether it be Dataset, Domain Model, or Data Reader.
We generally create classes that consume the data entity and are smart enough to not have a need to iterate.
Not saying I won't need to have any iteration ever, just stating that
1) Recently we haven't
2) We don't use many DataSet's or Readers in production code.
-
So your Data Access Layer is tightly coupled to your Business Objects?
Thread Closed
This thread is kinda stale and has been closed but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.