I moved to the United States less than a year ago. Like most new immigrants, I did what I was told to do: apply for stable jobs, build a foundation, get settled. I applied to Best Buy. They didn’t go through with my application.

So I built a portfolio website, put my projects on it, and signed up for Upwork. The next day I had a client.

Not just any client. A retired Coast Guard captain with 21 years of service, a former Military Aide to the Vice President, and a fellowship at the Hoover Institution. He was looking for a Flutter developer to rebuild a government reference app. I was the person he picked.

The project was simple on the surface: take a 400-page U.S. Coast Guard handbook and turn it into a searchable, offline mobile app for emergency responders. The kind of tool someone pulls up on their phone during an active incident because flipping through a PDF isn’t an option.

What got me the contract wasn’t my resume. It was a side project.

I had built an app called Film Development Timer for a hobby I’m passionate about: developing film at home. It’s a niche tool that does one thing well. It stores development recipes, runs process timers, and works offline. Dense reference content, local database, fast search, mobile-first. The exact same technical pattern the Coast Guard project needed.

The captain didn’t see a new immigrant without local work history. He saw a developer who had already solved his problem for himself.

PDF to searchable handbook

I started building. The first challenge was getting structured data out of a government PDF. These documents weren’t designed for extraction. Running headers bleed into content. Paragraphs split across page breaks. Tables come out mangled. Wingdings characters show up as invisible Unicode. Every page has artifacts the extraction tools don’t handle.

I wrote a parsing pipeline. It reads the PDF, splits it into 24 chapters, breaks those into 362 searchable sections with proper heading hierarchy, extracts 322 acronyms and 183 glossary terms, detects cross-references between sections, and pulls out 63 diagrams. I hand-typed the entire table of contents from the physical PDF as ground truth to validate the parser’s output page by page. The whole thing outputs a single SQLite database file that works offline.

Then I built a web demo so the client could verify the content before I built the mobile app. Browse chapters, search the handbook, hover over terms to see definitions, follow links between related sections. Every feature I added was something I had already built a version of in my film timer app. Different content, same architecture.

The web demo

The deadline was March 31. I deployed the demo on March 18.

When I sent the link, I also checked the server access logs. A new visitor appeared within hours. Windows machine, coming from an Upwork referrer. They browsed systematically through chapters on Incident Action Planning, Operations, and Presidentially Declared Disasters. Then they checked it again on an Android phone. Multiple sessions over about an hour.

The client had shared the demo with his partners. The stakeholder evaluation was happening in real time, and I could see it.

His response the next morning: “This looks fantastic and was completed well before I expected, with such high quality. Can you summarize what the next phase would entail?”

I sent him a scoped proposal with a Gantt chart, architecture diagrams, and a screen flow for the mobile app. Things most freelancers never deliver. But I spent four years in college making project diagrams and technical documents. Those presentations that felt pointless at the time turned out to be exactly what a military client expects.

He added a bonus to the milestone and called me “an outstanding developer.”

I think about the Best Buy application sometimes. Not with resentment. They were looking for someone to work a register and answer questions about laptops. That’s not a bad job. It just wasn’t the right system for evaluating what I can do.

Upwork was different. The captain didn’t look at my resume or check my local work history. He looked at what I had built. A film timer app, some electronics projects, a portfolio website. He saw a builder. The system that evaluated me on my work instead of my credentials was the one that worked.

I’ve been in this country for less than a year. I’m building software for emergency responders. The side project I made for developing film in my garage is the reason I’m here.

Not bad for someone Best Buy didn’t want.