Your Personal Brand — What I Learned This Month

My experiences in the fourth phase

Iván Alberto Aguilar Castillo
4 min readAug 8, 2021

An overview of this month

I feel this phase was shorter than the last one, these days passed really fast and I did not notice, I really enjoyed this phase but I need to admit that is where most nervous I felt, many interviews and the feedback too, I was anxious for the results, but at the end everything went fine and I feel happy for that.

As I said, this month we had the interviews (three in total), two of them were between two interns, where one was the interviewer and the other the interviewee. It was an interesting dynamic, we could see through the perspective of the interviewer and I learned how difficult can be to evaluate a candidate.

Besides the interviews, I also focused on solving programming issues, studying computer science subjects and reading two books: Cracking the Coding Interview and Elements of Programming Interview.

In general, It was another phase with lot of learnings and experiences, I am glad of my progress and I want to keep improving more.

Solving problems

In order to be prepared for a coding interview, this phase I was doing the interview preparation kit challenges from HackerRank:

I could not finish all the problems but I completed most of them. It was a really helpful exercise. I could review subjects as sorting, dictionaries, hashmaps, arrays and strings. I learned how to implement bubble sort, merge sort and counting sort in different situations, it helped me to figured out their differences, and also I saw the benefits of data structures like hashmaps and dictionaries.

One of the subjects I most like to learned was recursion and dynamic programming. The idea of recursion is solving a problem calling the own function where is executing, this is a clean way to coding, it can save you many lines of code, but with the cost that it can affect the performance of your program if it is wrong implemented; the purpose of dynamic programming is solving the previous problem, basically the idea of dynamic programming is simplifying a complicated problem by breaking it down into simpler sub-problems in a recursive manner. At the end of this blog I left an example of recursion and dynamic programming.

Interviews

Doing interviews helped me controlling my nerves, after this phase I feel more confident, but I still have things to work. My first interview was good, I could answer most of the questions without much problem and my partner (the interviewer) did I nice job with the questions and keeping a calm environment.

For the first mock interview I learned (thanks to the feedback) that I need to be more concise with my answers so the interviewer can have more time for asking other questions. This with the purpose that the interviewer can evaluate better my knowledge.

I also was told to study more about JavaScript, specifically ES6 features. I used as a guide this repository I found:

As I mentioned in my blog for the third week, I learned many of the most relevant additions in ES6 as:

  • let and const keywords
  • for…of loop
  • Template literals
  • Arrow functions
  • Spread operator
  • OOP keywords

The second interview I had this phase (my performance interview) went good too, both of the interviewers were so nice and friendly, it helped me too the fact that I began doing the 4–7–8 breathing technique before. I was nervous at first but while the interview was going I started to feel confident. It was a nice experience, I really appreciate the feedback they gave me, now is easier to know what are the subjects I need to study more. I will give all my effort to improve the areas where I lack.

My second mock interview was different, because for this occasion it was my turn to take the role as an interviewer (and with a coding exercise). I learned how difficult can be to evaluate a candidate, you need to prepare an efficient grading rubric that covers all the categories that your company (or most specific, the position of the job) needs, also you should prepare a problem/questions that allows the interviewee to tell you about their knowledge so you can figure out if the candidate has the adequate level for the position, and I am still not mentioning the soft skills, that’s another important category that the interviewer should be aware.

This phase helped me to improve my coding skills, thanks to the challenges and the books I read, but personally, the most important thing I learned was how to control my nerves and be calm before an interview. I will still get nervous that’s for sure, but now I know how to stay calm (at least much more than before). This progression is a big personal achievement for me, I am really happy and proud of it.

Thank you for reading, I wish you a nice day!

--

--

Iván Alberto Aguilar Castillo

Software Engineer, responsible, friendly and self-taught, with hungry to learn new things.