Apps Business programming

BabyGroup Tech Journey

So here’s a little behind-the-scenes on one of SA’s newest e-commerce shops, BabyGroup. This has been a really great project to be involved with so it’s nice to be able to share a little on the journey. It’s also one of the few that are not “top-secret” so I can actually share some detail on it. Ha!

The journey:

BabyGroup started with the usual preliminary pre-project engagements and project proposals during August/September 2012. In that time, over a series of high-level discussions, the vision was explained with a view to understanding the technical requirements, all leading to the ultimate appointment of yours truly to head up the technical side of the project commencing October 2012.

We opened doors 1 May 2013, 8 months later (we did some soft launching before) with full ecommerce and online creditcard payments with 3D Secure (yes, there was some small delays, both real-world and technical with regards 3D Secure).

So what happened in that 8 months:

We designed the aesthetics of the site and put together the 60+ page template designs required for launch

We iterated through the site’s workflow, with a focus on the basket checkout process and making sales (ie, UX)

We picked out an ecommerce/cms platform to serve the base of our needs

We architected integration points and highlighted custom code requirements to meet some of BabyGroup’s unique requirements

We implemented all of the above

Outside of that, in the real world, offices need to be setup, with warehousing, and stock needed to be bought. Photos needed to happen, marketing needed to kick in, basically- a LOT needed to go down. I, however, focused on the site architecture, implementation and roll-out.

And to do that, I had 1 resource, me. But this is an area I thrive in. Full-stack development, with a handle on the full life-cycle.

I chose Kentico CMS as the base platform because:

it’s an ASP.NET solution and I prefer the predictability of strongly-typed systems where the complexity is expected to explode. There’s a lot that can be said about that, and it would stir up a debate, no doubt, but in the end, I needed to move on a platform I could do gymnastics on. And the trusty Windows Server, SQL, C#, ASP.NET is hard to beat in that regard.

But I didn’t have any Kentico experience at all. In fact, I had far more Magento experience at this point. Well, it was probably my experience with Magento (and PHP specifically) that motivated my decision to go Kentico/C#. Read what you will between the lines *wink*.

If you would like more information on Kentico CMS as a platform option, I would strongly encourage you to visit their site.

I also chose Azure as the hosting provider. Not because I had experience with it, in fact, my experience with Azure at the start was very limited, but I could see (and not from reading the headlines of pseudo-tech-journals) the promise it held along with some of the successes others were having.

Both were very steep learning curves. Again, something I love tackling.

Looking back, this was a perfect project for me really: I had 2 brand new technologies to master, I needed to code fluently in C#, integrate with several unknown APIs, do some HTML/CSS wizardry based on a PSD file, add in some funky Javascript in places (I even sliced some images in Photoshop.. oooo *hahaha*) and do all that asap, based on a Word document (with a lot of Visio diagrams). Love it!

We changed strategies en-route (several times) and stuck to the plan of planning to change when we need to. Again, something I absolutely love about programming and software. The environment is very fluid, the ideas are flowing thick and fast but budgets need to be honoured. A lot of this really was due to the sheer hard work and brilliance of Henri and James, the Jedi masters behind it all, who have taught me heaps about real-world business.

This is also something I love about programming in startup environments. The mind-share with and interaction with the business side adds a very real dynamic and pressure to the software side and keeps it real. Yes, you can get all fluffy about a lot things inside coding with design patterns and performance and unit testing and strict iterations and planned releases… but there’s a point where the bone meets flesh and the only thing that matters is what’s happening on the site, live, right now.

And this takes discipline. It doesn’t mean you throw out good practices and take shortcuts. If anything, you specifically avoid those oh-so-tempting shortcuts and don’t make decisions that’ll bite you in the ass later. It just means that at times, you put your foot down, drink a double espresso and make it happen. Even at 3am if you have to.

Yes, we have full unit testing on all custom code (and still running green). Yes, we have a development environment, a fully hosted quality-assurance environment, a pre-production environment and a live production environment running on the cloud. Oh yes, we do. Excuse me while I high-5 myself here quickly.

Since launch, we’ve had some great sales, the site has been acting nicely, the custom integration points ticking over neatly, all paying rent and everything, for the most part, sweet. Yes, we’ve hit some hurdles and had one or two oopsies, but nothing that can’t be fixed quickly and nothing that’s derailed us.

There’s still plenty new things happening behind the scenes and lots more coding happening. And the journey is, in true geekdom, tres cool. Here’s to making it happen even more and, oh, if you looking for some neat (but not just your everyday type stuff mind you) baby-related products, BabyGroup is where you should be looking.

P.S. And if I sound a little like I’m gloating, well, maybe I am. I’m just proud of the work I have done and try to do. I love what I do and hardly work a single day. I’m not ashamed of that. Why would I be? Yes, I’m not perfect and make mistakes from time to time, just part and parcel of being human. But I do try my best to make right. And this project, like a lot of others (even those I can’t talk about) have been such a blessing to be a part of, it’s hard not to sing and dance about. So, here I am, singing and dancing….