Skip to content

Instantly share code, notes, and snippets.

@asaskevich
Last active February 18, 2019 13:31
Show Gist options
  • Save asaskevich/7ab0ba611a7d3586aaffa25eb950d110 to your computer and use it in GitHub Desktop.
Save asaskevich/7ab0ba611a7d3586aaffa25eb950d110 to your computer and use it in GitHub Desktop.
Gem4me vacancy
const responsibilities = [
'Chat-bots and theirs environment',
'Different backend tasks',
];
const needToKnow = [
{ languages: ['JavaScript', 'TypeScript'] }, // ES6, Node.js, TypeScript - strong knowledge
{ frameworks: ['Express.js', 'Koa.js', 'Hapi.js'] }, // preferred to know Express.js and Koa.js
{ databases: ['Relational', 'NoSQL'] },
];
const niceToKnow = [
{ environments: ['Linux'] },
{ tools: ['CI/CD'] },
{ containers: ['Docker', 'Kubernetes'] }, // one of them
{ cloud: ['Amazon WS', 'Microsoft Azure', 'Google Cloud Platform'] }, // one of them
{ testing: ['Mocha', 'Chai', 'Jest'] }, // one of them
];
class JsFullStackDeveloperVacancy extends Bot {
@ReadMore('https://gem4me.com/ru', 'About project')
public project: Project = Project.Gem4Me;
public async onMessage(message: Message, candidate: Candidate) {
switch (message.command) {
case '/what_you_will_do':
return `You will help me with: ${Object.keys(responsibilities).join(',')}`;
case '/what_i_need_to_know':
return `We are working with: ${Object.keys(needToKnow).join(',')}`;
case '/what_are_nice_to_know':
return `It's very nice to know: ${Object.keys(niceToKnow).join(',')}`;
case '/im_ready_whats_next':
return await this.wantToWorkHard(candidate);
case '/im_part_of_the_amazing_team':
return `${this.project}: Welcome bro!`;
}
}
public async wantToWorkHard(candidate: Candidate): Promise<boolean> {
// TODO: Check if candidate want to be part of amazing team
}
}
@Buggytheclown
Copy link

This is a great format, but

"You will help me with: 0,1"
"We are working with: 0,1,2"
"It's very nice to know: 0,1,2,3,4"

what does this mean?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment