Inside My Double Internship: How I Cracked Microsoft, Thrived at Procore, and Stayed Sane
A behind-the-scenes look at balancing two elite internships at Microsoft and Procore - from cracking interviews and shipping real features to managing burnout, learning at scale, and thriving under pressure before graduation.

What We’ll Cover
- Why I took on two internships at once — and how I got the chance to.
- Cracking the Microsoft EDC interview.
- My work at Microsoft Egypt: projects, tools, and team dynamics.
- My role at Procore: integration tests, CD pipeline integration, and SWE × QA work.
- Balancing the load: managing two tech internships with minimal burnout.
- Thank you to the mentors and teammates — and what’s next on the horizon.
We’ve got a lot to unpack — let’s begin!
1. Why I Was Crazy Enough to Attempt This (and Why You Should Be Too)
Most people told me to pick one. “Focus,” they said. “Microsoft alone will keep you busy.” And I believed them. But one person stuck with me through my stubbornness and pushed me to do better — my lovely mom. She showed me that I didn’t need to settle, not when I had the chance to experience two worlds, learn from two cultures, expand my network twice as fast, and accelerate my growth faster than any single internship could. So before I begin: thanks, mama.
This wasn’t about résumé stacking. It was about rewriting my limits. And if you’re reading this thinking, “Could I do the same?” — the answer is yes. You might be scared. I was too. But growth doesn’t come from comfort. It comes from perseverance and stacking short-term wins to reach a long-term goal.
So let’s get right into it and spill all the details about my EDC interview experience.
2. Cracking the Microsoft EDC Interview
The journey started like most do: a HackerRank test sitting in my inbox, staring me down. The first round was a timed coding assessment — two DSA questions and a handful of multiple-choice problems covering everything from basic logic to object-oriented thinking.

A few weeks later, I got the email: I passed. What followed was a two-interview beatdown, both back-to-back on the same day — honestly, it felt like a mini marathon.

The first interview was a mix of system design and DSA. I was asked to implement a thread-safe singleton logging system — scalable, clean design. We talked about object-oriented principles, SOLID, and what makes a good design great. Then came a DSA problem which, full disclosure, I can’t even remember — adrenaline does that.
The second interview leaned heavier into data structures and algorithms. I got the classic “Number of Islands” problem — a LeetCode staple — and solved it with Depth-First Search. We dove into time complexity, array-traversal optimizations, and general programming intuition.
Looking back, here’s what helped most:
- Sharpening my fundamentals across DSA domains: trees, graphs, arrays, recursion.
- Brushing up on SOLID principles and OOP patterns like Singleton and Factory.
- Light systems-design prep — enough to express ideas clearly and draw clean boundaries.
Don’t overthink it. You don’t need to be a genius — just well-prepared, calm under pressure, and ready to communicate your thought process. You’re not only judged on correctness, but on clarity and composure.
And the best part? Once I finished both interviews, I walked out proud — not because I was perfect, but because I showed up fully. One and a half months later, the acceptance email arrived.

After weeks of prep, uncertainty, and waiting, I was in — a student from Cairo joining one of the most respected engineering teams in Egypt: Microsoft Egypt’s Development Center. I read that offer over and over, like I was trying to convince myself it was real. But it was. And I was ready.
3. My Work at Microsoft Egypt: Projects, Tools, and Team Dynamics

During my internship I was placed in the MSN OneService team — responsible for a critical middleware layer that powers Microsoft News across the globe. I quickly realized how deeply this service sits in the stack, touching infrastructure, data pipelines, and AI workflows all at once.
Due to NDA and sensitivity, I unfortunately can’t dive into the exact details of most of my work. But what I can say is that I spent my internship neck-deep in Azure, working hands-on with real-world systems at scale. I deployed an o3-mini model on Azure AI Foundry which we used to evaluate the reasoning of another AI system. I wrote automation logic in both PowerShell and C#, deployed two Azure Functions, and extended an existing Logic Apps workflow to streamline part of our team’s AI-driven evaluation loop.
Along the way I picked up Azure Data Explorer (ADX) and learned to query massive telemetry logs using Kusto Query Language (KQL) — my first time with a query language that felt designed for engineers: powerful, expressive, and lightning fast.
I was also included in all team standups, scrums, and syncs. I was never treated as “just the intern” — I was treated like a real engineer, and I even collaborated with senior engineers from Redmond, which made the whole experience feel global.
More than the tools or the tech, the biggest lesson I learned was this: to thrive in this industry, you need to be proactive, humble, and always ready to learn. Everyone I met, from interns to principal engineers, was kind, supportive, and driven by excellence. That mindset was contagious.
But the story doesn’t end there. While working at Microsoft, I was also simultaneously interning at another incredible company — Procore Technologies. Let me show you how I balanced both without losing my mind (or sleep).
4. My Role at Procore: Integration Tests, CD Pipelines, and SWE × QA Work
At the same time I was working at Microsoft, I was growing through an entirely different challenge at Procore. My main responsibility? Making sure integration tests for one of Procore’s most user-heavy applications were no longer confined to local machines, but fully running on every CD pipeline run.

I can’t go into the product specifics, but I can share the stack and skills I picked up. I worked hands-on with Jenkins pipelines, Docker multi-stage builds, and even dove into PHP codebases — something I never thought I’d do, but which turned out to be an invaluable learning experience. The ticket itself was a beast — estimated at 20+ story points. Every day was a push to understand more of the system, break tasks into smaller deliverables, and steadily move toward a solution the whole team could trust in production.
Beyond pure SWE work, I also wore my QA hat. I owned manual testing tickets, identified edge cases, and wrote test cases for an entire epic. It wasn’t just about finding bugs — it was about thinking like a user, predicting where things might break, and communicating clearly with developers to fix them fast. Procore pushed me to step outside my comfort zone, sharpen my testing mindset, and embrace a culture where quality isn’t an afterthought — it’s baked into the process.
5. Balancing Two Tech Giants: Time Management, Mindset, and Avoiding Burnout
Balancing both internships was no walk in the park. Some days it felt like juggling two worlds at once, constantly switching contexts and trying not to drop the ball. The saving grace was that each company’s meetings happened at different times — but besara7a (honestly), that didn’t make it easy.
Some days I was stuck in six hours of meetings straight. I’d speak up in standup, then quietly switch gears and chip away at tasks from the other internship while still “present” in the call. It was survival mode. On average, I dedicated 6–8 hours a day to each internship, and to stay accountable I even tracked my time carefully so neither side was neglected.
The one thing that saved me was treating Friday and Saturday as sacred rest days. No coding. No Slack. No thinking about tasks — just a full mental reset. I’d immerse myself in books like The Laws of Human Nature by Robert Greene and Thinking, Fast and Slow by Daniel Kahneman, and I even tried to stay off LinkedIn (watching people claim they “trained ChatGPT to fly to Mars” is unnecessary stress).
Still, the grind caught up with me. I burned out for about a week — the fatigue, the brain fog, the lack of motivation. But that week had two off-days built in, so I bounced back faster than expected. That taught me that rest isn’t optional — it’s a competitive advantage. My biggest advice to anyone attempting something like this: treat sleep and recovery as sacred. You can grind long hours for a while, but without proper rest, your body and mind will eventually hand you the bill.
Looking back, balancing Microsoft and Procore wasn’t just about time management — it was about mindset. Being intentional with every hour, and brave enough to step away when I needed to recharge.
6. Gratitude & Horizons Ahead
None of this would have been possible without the people who believed in me. First, thank you to the HR teams at both Microsoft and Procore for approving what most would have called impossible — letting me pursue two internships at the same time.
A huge thank you to my managers at both companies. Their encouragement gave me the confidence to keep pushing even when the workload was overwhelming. Having leaders who cared made all the difference. And to my mentors throughout both internships — from debugging help to career advice, you were there every step of the way. Your patience and wisdom will stick with me for years.
My internship at Procore is still ongoing, and I’m excited to now focus on one role at a time. I’m also preparing for my next ultralearning journey — building skills, exploring ideas, and one day creating something truly valuable.
Thank you so much for reading my story. If there’s one thing I hope you take away, it’s that you’re capable of far more than you think. With the right support, a willingness to learn, and a bit of stubbornness, even the “crazy” paths are possible.