BP-Tech — Senior Software Engineer

4 min read

BP-Tech — Senior Software Engineer

2003 – 2011 | Enterprise applications, integrations, and desktop tooling

I spent eight years at BP-Tech building e-learning tools, application features, and integrations across web and desktop environments for enterprise clients including Fortune 10 and Fortune 500 companies. This was formative work—I went from junior developer to senior engineer here, learning how to ship software that people depend on.

The work was varied: web applications (ASP.NET), desktop tools (WinForms, then WPF), Flash/Flex-based e-learning players and authoring tools, data integrations, and the glue that connects enterprise systems together.

What I Built

E-Learning Authoring Platform (Fidelity Investments)

I maintained and evolved BP-Tech’s core Flash-based authoring platform—a tool used by instructional designers and graphic designers to create courseware. The platform went through a major revamp from ActionScript 2 to ActionScript 3, which was essentially a rewrite given how different the two versions of the language were.

The platform was licensed to Fidelity Investments, where it became a regularly used tool in their Learning & Development department. This was significant for BP-Tech because it generated recurring licensing revenue—the product I was building wasn’t just a client deliverable, it was a business asset.

Multi-Device E-Learning System (CVS Pharmacy)

I built a custom e-learning authoring and playback system for CVS Pharmacy because no off-the-shelf authoring tools could target BlackBerry Curve devices. CVS needed to deliver training to store staff, and BlackBerry Curve was the device their employees had. The off-the-shelf tools at the time targeted desktop browsers—nobody was thinking about handheld devices for e-learning yet.

What made this project interesting is how it evolved. The initial constraint (BlackBerry Curve) was very specific, but the architecture I chose was flexible enough to adapt as CVS’s device landscape changed. I successfully evolved the platform across three device generations: BlackBerry Curve → store thin client/POS systems → iPad. Each generation required different rendering and interaction patterns, but the content model and authoring workflow stayed stable. This extended the investment and kept CVS on the platform for years rather than requiring a rebuild with each device transition.

This was my first real experience with the pattern I’d later formalize at NetDimensions: building for constrained devices forces you to think carefully about what’s essential, and offline-capable architectures have longer shelf lives than online-only ones.

Courseware Assembly Pipeline (New Balance)

I architected an async content assembly system for New Balance that allowed photographers, product managers, and writers to submit their pieces of work independently. The system assembled these contributions into LMS-ready Flash/Flex-based e-learning courseware for quarterly sales training aimed at their front-end retail staff.

The key design decision was making the workflow asynchronous. Before this system, courseware production was sequential—each contributor waited for the previous one to finish. I designed a pipeline where non-technical contributors could work in parallel, submitting content to an ASP.NET-based UI that handled assembly and packaging. This eliminated the bottleneck of sequential handoffs and significantly reduced courseware production time.

What I Learned

“It works” is table stakes; “it’s maintainable” is what matters. Early in my career, I thought the goal was to get code working. Over eight years, I learned that code spends far more time being read, modified, and debugged than being written. The CVS project drove this home—a system that needed to evolve across three device generations had to be maintainable by design, not by accident.

Enterprise integration is where things get messy. Clean architectures exist in textbooks. Real systems have to talk to legacy databases, third-party APIs with questionable reliability, file formats that predate your career. I developed an integration mindset that assumes external systems will misbehave—and plans for it.

Automation compounds. The first time you automate a deployment or a data migration, it feels like extra work. The tenth time you don’t have to do it manually, you realize the investment paid off. I established early automation practices for deployment and data migration here that shaped how I think about operational work.

Building for constrained devices pays forward. The CVS project taught me that constraints aren’t just limitations—they force architectural decisions that often prove more durable than unconstrained designs. This insight directly informed the offline-first mobile work I did later at NetDimensions.

Why This Mattered for Later Work

This role gave me the foundation that everything else built on: full-stack fluency, an integration mindset, maintainability as a design goal, and respect for boring technology that works reliably. The specific thread of building for constrained and offline-capable devices (CVS BlackBerry → NetDimensions mobile → Decian PWA) started here.

Technologies: ASP.NET, JavaScript, ActionScript 3, Flash/Flex, WinForms, WPF, SQL Server, various integration protocols.