Abílio Azevedo.

Technical Consulting - Training and selecting candidates

Cover Image for Technical Consulting - Training and selecting candidates
Abílio Azevedo
Abílio Azevedo

Farmly is a coffee startup that connects producers to international buyers. They hired me in 2021 to provide technical consulting for their tech team.

We had weekly meetings with the team for training in technology applied to the company's scenario. We talked about:

And in our last interaction I was asked to select and evaluate candidates for the fullstack developer position. I had already done this role in the companies I worked at as a leader, but as a service for a third party company it was my first opportunity.

  • I asked the candidates to take some project from their portfolio to present its functioning and architecture, describing the technical choices. As the company focused on ReactJS, NodeJS and the use of GraphQL, we put these technologies as optional, making it clear that they would be important differentials.

  • The candidates presented very interesting projects, in addition to talking about the technologies they have worked with.

  • In the end to test development in practice I applied a code test:

Test

What does the code below do and is it correct?

function run(input: string) {
  let depth = 0;

  for (let c of input) {
    if (c === "(") {
      depth++;
    } else if (c === ")") {
      depth--;
    }
  }

  return depth === 0;
}

console.log(run("(()"))  
console.log(run("(())"))

Solution

  • The code tests if the received string has the right number of parentheses and returns true or false

  • However, it is wrong because it doesn't check the case of finding ")" without having opened the parenthesis;

function run(input: string) {
  let depth = 0;

  for (let c of input) {
    if (c === "(") {
      depth++;
    } else if (c === ")") {
      if (depth <= 0) {
        return false;
      }
      depth--;
    }
  }

  return depth === 0;
}

console.log(run(")(")) // false
console.log(run("(())")) // true  

Feedbacks

For all candidates I gave feedback on their resume, portfolio, LinkedIn, Github... Unfortunately this doesn't happen in all hiring processes which is a shame.

IMG 3003


More posts

Cover Image for The 4-Hour Work Week

The 4-Hour Work Week

**The 4-Hour Work Week** is a groundbreaking guide to escaping the 9-5 grind, automating your income, and living life on your own terms. Bestselling author Tim Ferriss shares revolutionary strategies for outsourcing, remote work, lifestyle design, and building automated businesses that generate passive income. Learn how to join the 'New Rich' who leverage time and mobility instead of trading time for money. This influential book has transformed how millions approach work and life balance in the digital age.

Abílio Azevedo
Abílio Azevedo
Cover Image for The Phychology of Money

The Phychology of Money

Morgan Housel offers valuable insights on financial management and decision-making. The author emphasizes that financial success depends more on behavior than on intelligence or technical knowledge. Housel highlights the importance of long-term vision and resilience in the face of market volatility, encouraging us to focus on sustainability rather than short-term gains.

NewsLetter

I will send the content posted here. No Spam =)

Experienced Software Engineer with degree in Electrical Engineering with over 10 years of hands-on expertise in building robust and scalable mobile, web and backend applications across various projects mainly in the fintech sector. Mobile (React Native), Web (React and Next.JS) and Backend (Node.JS, PHP and DJANGO). My goal is to create products that add value to people. - © 2024, Abílio Azevedo