Leveling Up as a Software Engineer – Day 2

Pavel RahmanPavel Rahman
2 min read

As part of my journey to solidify my full-stack skills, Day 2 was all about diving deep into practical frontend concepts and testing foundations. I focused on learning by doing—splitting the day into specific learning blocks and absorbing as much as I could from each.

🧠 Morning: State Management and Props Flow

I began the day revisiting fundamental concepts in React:

  • Local vs Global State: I now have a clearer understanding of when to use local state (typically with useState) for component-specific data, versus when to leverage global state for cross-component communication.

  • Props Drilling: I explored how props can be passed from parent components to child components. While simple in isolated cases, I also saw firsthand how it can get messy quickly in larger apps—another reason why global state can sometimes be the cleaner path.

🧪 Evening: Mocha vs. Jest

The last block of the day was focused on testing. I explored the differences between Mocha and Jest, two popular JavaScript testing frameworks.

Here’s what I took away:

  • Mocha is fast and modular. It’s a testing framework only, and it doesn’t include assertion or mocking out of the box.

  • Jest, on the other hand, is a more feature-complete testing solution, but can feel heavier due to its all-in-one approach.

  • Chai is an assertion library often used with Mocha—not a testing library itself. This distinction cleared up some confusion I had going in.

I also did some light prototyping in Mocha, testing different functions and data types to get comfortable with the syntax and flow.


✅ Summary

Day 2 was rich with practical takeaways:

  • Clearer understanding of local vs global state in React.

  • Developed a solid grasp of how Mocha and Jest differ—and how Chai fits into the picture.

  • Hands-on practice writing test cases to solidify concepts.

🔜 What's Next?

For Day 5, I’ll be continuing with the rest of the planned learnings—not just from a reading perspective, but by actually building, testing, and exploring further.

0
Subscribe to my newsletter

Read articles from Pavel Rahman directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Pavel Rahman
Pavel Rahman