/***********************************************************/
/* Created by 2S Computing on 30/03/2016. */
/* Copyright (c) 2016 2S Computing. All rights reserved. */
/***********************************************************/
#include
#include
#include
#include "experience.h" // Class Experience
#include "excitingJob.h" // Class ExcitingJob
#include "cdi.h" // Class CDI
const unsigned int EXPERIENCE_MIN = 5;
const unsigned int DIPLOMA_LEVEL = 5;
int main(int argc, char **argv)
{
std::unique_ptr pExperience
= std::make_unique(argc, argv);
std::shared_ptr pJob
= std::make_shared(EXPERIENCE_MIN, DIPLOMA_LEVEL);
pJob->requires() += "Design pattern";
pJob->requires() += "Polymorphism";
pJob->requires() += "Templates";
pJob->requires() += "Qt";
bool solidBasis = (pExperience->diploma() >= pJob->diplomaMin())
|| pExperience->anywayIsGoodCandidate();
bool hasExperience = (pExperience->years() >= pJob->experienceMin());
if (solidBasis && hasExperience)
{
double matchingSkills = (double) std::accumulate(
pExperience->skills().begin(), pExperience->skills().end(), 0,
[&](unsigned int matchingSkill, const std::string& skill)
{
return matchingSkill + (pJob->requires().match(skill) ? 1 : 0);
}
);
if ( (matchingSkills / pJob->requires().size() ) >= 0.75)
return CDI::SendApplication("recrutement@2s-computing.fr");
}
return 0;
}
/*************************************************************************/
/* projets industriels, R&D, informatique embarqué, applications mobile, */
/* SSII et cabinet de recrutement */
/*************************************************************************/
0 Commentaire