top of page

Welcome
to NumpyNinja Blogs

NumpyNinja: Blogs. Demystifying Tech,

One Blog at a Time.
Millions of views. 

My Early Engineering Journey: Lessons from Code, Chaos, and Hackathons

Jan 14
5 min read

The Bugs That Taught Me More Than Any Course

Every engineer has that moment — the one where a tiny bug derails your entire flow and humbles you in the best possible way. Mine didn’t come from a complex distributed system or a cutting‑edge algorithm. It came from two small, almost embarrassing issues… and a hackathon that taught me more about tools and teamwork than any course ever did.

Funny enough, these moments had nothing in common on the surface. One was about a slow PostgreSQL insert. Another was about a single misplaced % sign. And the last one? A hackathon that showed me the difference between Python and Power BI.

But together, they shaped how I think about engineering today.

When 70 Lines of Code Lost to 10

The task seemed simple: take a CSV file and insert thousands of rows into a PostgreSQL database. I reached for what I knew — psycopg2. I wrote a loop, inserted rows one by one, and felt pretty good about it.

Until I ran it.

It was slow. Painfully slow. The code was long, repetitive, and felt like something from a bygone era of Python.

Then I tried SQLAlchemy’s bulk insert.

Suddenly, 70+ lines of code shrank to around 10. The performance improved dramatically. The code became cleaner, easier to maintain, and far more elegant.

The Lesson Hidden in a Slow Script

  • The “familiar” tool isn’t always the best

  • Good engineering is often about stepping back and asking, Is there a smarter way to do this?

  • Abstraction, when used well, is a superpower

The Percent Sign That Broke Everything

My second challenge was even smaller — and somehow more frustrating.

I wrote a SQL query in Python using a LIKE '%1' pattern. But the query kept failing. No matter what I tried, Python refused to cooperate.

After digging deeper, I realized the issue: Python thought %1 was a formatting placeholder, not a literal string.

The fix? '%%1'

One extra %. One tiny escape character. Hours saved.

The Lesson Hidden in a Single Character

  • Different languages interpret symbols differently

  • Small characters can cause big problems

  • Reading error messages slowly and carefully is a skill worth developing

The Hackathon That Changed How I See Tools

A few weeks later, I joined a hackathon. I didn’t expect to learn so much about data cleaning tools. I thought “cleaning data” just meant removing a few empty rows.

Spoiler: it’s a lot more than that.

Our team had five people — me and 4 teammates. One messy dataset. One goal: turn it into a clean, meaningful dashboard.

And we approached the problem in completely different ways.

Watching Python Work Its Magic

My one other teammate opened a Jupyter Notebook and started typing. Pandas functions flew across the screen:

  • removing duplicates

  • fixing missing values

  • cleaning weird formatting

  • reshaping the data

It felt like watching someone speak a language I didn’t fully understand yet. But it was fast. Really fast.

What Python Taught Me That Day

  • Python is great for heavy, messy data

  • It gives you full control

  • But it requires coding confidence

Why Power BI Felt Like Home

While my teammate coded, I opened Power BI. It felt friendly — like a tool made for beginners.

With Power Query, I could:

  • remove blank rows

  • split columns

  • change data types

  • filter out unnecessary values

Everything was visual. Every transformation was traceable. It felt like building with Lego blocks.

Once the data was clean, I moved on to the fun part: building the dashboard.

What Power BI Helped Me See

  • Instant visual feedback

  • Easy undo and reorder

  • A smooth path from raw data to insights

Two Tools, One Team

Even though we used different tools, our work fit together perfectly.

  • My team member cleaned the complicated parts using Python

  • I cleaned the simpler parts and built the dashboard in Power BI

It felt like combining two superpowers:

Python = strong, flexible, powerful   Power BI = simple, visual, beginner‑friendly

By the end of the hackathon, we had a dashboard we were proud of — and I had a much clearer understanding of when to use each tool.


Flattening the Curve of Complexity: Our Journey with COVID Survey Data

For another hackathon, we need to tackle COVID survey datasets using Python in Jupyter Notebook — three different schemas, each with its own quirks and inconsistencies. What followed was a whirlwind of data wrangling, late-night debugging, and some truly rewarding breakthroughs.

🧩 Challenge 1: Temporal Chaos

Schema 1 and Schema 2 recorded data weekly, while Schema 3 used monthly intervals. This mismatch made it nearly impossible to compare trends or analyze respondent behavior uniformly.

Our fix: We converted Schema 3’s monthly data into weekly chunks. This alignment gave us a consistent timeline across all datasets, unlocking granular trend analysis and making temporal comparisons far more insightful.

Screenshot of the code.
Screenshot of the code.

👥 Challenge 2: Age Anomalies

Age data was a mess. Schema 1 had a binary "Over_60: Y/N" flag. Schema 2 used ranges like "45–64", and Schema 3 had categorical buckets like "<26", "45–64", ">60". Aggregating or comparing age groups was a nightmare.

Our fix: We standardized age columns across all schemas, renaming them meaningfully and normalizing values into consistent age categories. This gave us a reliable foundation for age-based analysis and demographic insights.

🔍 Challenge 3: Understanding the Data Landscape

Once we cleaned and aligned the datasets, we faced a new challenge: understanding the structure and distribution of the data itself.

Our fix: We dove into exploratory data analysis (EDA). We asked questions like:

  • How did respondent counts vary week to week?

  • Which weeks had the highest participation?

  • How were age groups and demographics distributed?

  • What symptoms and travel risks correlated with probable COVID cases?

  • How did vulnerability differ across age categories?

Visualizations and aggregations helped us uncover patterns that weren’t obvious at first glance.

🩺 Challenge 4: Prescriptive Power

The final goal was ambitious: use the data to help doctors prioritize COVID testing when kits were limited. We needed to identify high-risk individuals based on survey responses.

Our fix: Our analysis revealed that people with pre-existing medical conditions were significantly more likely to be classified as probable COVID cases. Older adults with such conditions emerged as the highest-risk group. These insights could help doctors make informed decisions, focusing testing efforts where they’re needed most.

The Bigger Lessons Behind the Small Moments

Across all these experiences — the slow insert, the rogue %, and the hackathons — the lessons were surprisingly similar:

  • You don’t need to know everything

  • Tools are just tools

  • Collaboration matters

  • Small problems teach big lessons

  • Growth hides in the small stuff

Final Thoughts: Why These Moments Matter

If you’re early in your engineering or data journey, don’t underestimate the power of these small moments. They’re not setbacks — they’re stepping stones.

And if you ever get the chance to join a hackathon, do it. You’ll learn, you’ll build, and you’ll discover how different tools — and different people — can come together to create something meaningful.

Engineering isn’t built on big breakthroughs alone. It’s built on these tiny, humbling, surprisingly fun moments that push you forward.

 
 

+1 (302) 200-8320

NumPy_Ninja_Logo (1).png

Numpy Ninja Inc. 8 The Grn Ste A Dover, DE 19901

© Copyright 2025 by Numpy Ninja Inc.

  • Twitter
  • LinkedIn
bottom of page