Showing posts with label checklist. Show all posts
Showing posts with label checklist. Show all posts

Friday 19 January 2018

Interviewing Developers, Leads and Consultants for Projects

Overview:  I look for 3 key areas: are you 1) hardworking, 2) smart & 3) do I like you.  The technical part of the interview helps me see if you are hardworking.

Budget is always a big issue, you don't want to waste your time or the employees.  Upfront, both parties need to know they are in the right space.  Also, pay, you need good quality and you don't want people shifting as most companies don't raise properly after recruiting.
Timeline, it takes time to find the right person.  And it takes time, they have notice periods, need to be to onboard/train the person, start early, for a contractor you'll need 1-2 months and for permanent it generally will take 5-6 months.
Clear Job And Expectations is key, it will help scan/find suitable candidates.  Be sure to cover KSA (Knowledge, Skills, and abilities).
Listen don't sell, I see interviewers including me selling if I like the candidate, rather listen than talk a lot.

Skills:
Depending on the project will dictate the skills and experience I look for.  This post lists the skills I generally look for when hiring dev and leads for SharePoint based projects.  Firstly, I compile a list of skills for the project and ensure each developer role covers multiple areas/expertise types.  My general list is shown below.

Skill needed:
  • Azure or AWS
  • SharePoint/O365/MS Teams
  • CSOM/REST
  • PHA
  • TFS / GIT
  • .NET/C# 
  • WCF / Web API/ Open API / Swagger
  • SQL Server/T-SQL
  • Evening/Enterprise Service Bus
  • Entity Framework/Code First
  • HTML/CSS
  • JQuery, JavaScript
  • ALM, DevOps, CI/CD
  • Angular JS, KnockOut React VueJS, Other JScript Libraries
  • O365
  • Networking
  • Federation/OAuth/Security
  • Agile/Scrum
I keep a scorecard and Notes that I fill in for each candidate.  If they score too low in the technical section, I don't start the Personal section, and until I think they are a good candidate then I start the problem solving which I find to be the best indicator of if a guy is going to work out.  Looking back at a lot of developers and leads hired, the 2 critical sections are problem-solving and admits limitations (the guys that don't know when to say "I don't know" are generally a problem if hired). 

Candidate Template:  John Doe

Technical:
Notes
John
SharePoint
Branding, knows SP limits excellent,
8 missed JS injection
SSO/Federation/Security
SAML, ADFS, passive clainms and SSL
9
PHA
Types, S2S vs ACS, Certs, MVC app pkg
8.5
JavaScript/TypeScript/AngularJS/SPFx
Namespaces, versions ng,
9.5
Search
Trimming, CEWS, components, DisplayTemplates, KQL
10
BI
SSRS, Power BI, SSAS, rdl, understand no depth in knowledge
7
                  

Personal:
Notes
John        
Eager

9
Smart
Super adjusted
                              
8
Like

8
Hardworking

9
Admits limitations
                                                               

10




Problem Solving:       
Notes    
Abhishek
Logical

7
SharePoint Problem Solving
                                                               

9
                                   

Smart, nice guy, super knowledgeable.  Admitted he does not know BI at all and then actually gave a solid explanation of BI on SP. 
Technical: 9
Personal: 9

Problem Solving: 8

Example qus when trying to identify a candidates strengths:
QU: Difference/compare Web Services vs WCF vs Web API
ANS:
Web Services is the oldest, .asmx extension are ASP.NET Microsoft's web services.  HTTP protocol only and uses SOAP (XML).  Microsoft proprietary.
WCF was the next release and ends with the extension .svc.  Supports the following protocols: HTTP, HTTPS, TCP, Named Pipes, MSMQ.  WCF uses SOAP (XML)Complex to configure but offers flexibility.  Add REST support using webHttpBindings and then can use XML, JSON and ATOM data format.  IIS needs config change to support PUT and .. verbs.
WebAPI is part of MVC template wasn't originally.  Simple to setup and supports REST.  Lightweight and easy to setup.  Easy to consume.  HTTP protocol only. Supports XML and JSOM data format.

CSS Basic Qus (as I am rubbish, thanks to Jeff H):
QU: How can we add/implemented CSS to our pages (3 approaches)
ANS: Inline css, in the head section of the page or call/reference an external CSS file
QU: Explain Z-Index
ANS: Stack order
QU: Browser engines used
ANS:  IE uses Trident or now called HTMLEdge, Chrome & Opera use Blink; Safari uses webKit; Firefox/Mozilla uses Gecko.
QU: Explain block object positioning between: Absolute, relative and fixed. 
QU: Diff class selector vs and id selector
QU: Explain Display: None vs Display: Hidden

Template used for a Delivery Lead:

Technical:

Notes

Kam Score

Delivery/CI/CD/ITIL

 

 

SSO/Federation/Security

 

 

Programming C#

 

 

Front end/JS/HTML

 

 

Cloud/Azure/API’s

 

 

BI/APIM/SQL

 

 


Personal:

Notes

Kam Score       

Eager

 

 

Smart

 

 

Like

 

 

Hardworking

 

 

Leadership

 

 

Admits limitations
                                                               

 

 


Problem Solving:       

Notes    

Kam Score

Logical

Problem Solving