views:

432

answers:

2

I'm trying to land my first programming-related job, and I found a website for a company which is accepting resumes for an eCommerce development position.

This is the requirements they listed:

To be proficient in:

  • HTML (hand-coded)
  • CSS
  • PHP
  • Javascript
  • MySQL

Preferred skills:

  • PEARL
  • Linux

The fact that they (unless they're actually using the PEARL programming language) misspelled perl and have a fairly bland portfolio aside, I can do all of this--I mean, I need to touch up on my Javascript and learn a bit more MySQL--but I can do all this, and I'm sure I can pick up perl in no time. But I was wondering--what exactly does an eCommerce developer do? Is this like, building shopping carts? User login systems? Or does it just mean doing everything except design on corporate websites?

+2  A: 

I would suggest that ecommerce is so much more than a specific technology. ECom is more about how the database is built and the features that are required. There is a good book that I read 10 years (a long time) ago that goes into ecommerce with asp classic. But there are many new ones using newer technologies here.

The big key is how you structure your data, products, options, orders, order details, credit card/user data, etc. Also, the various ways of processing transactions. How to handle order pipelines. When to offer navigations away from the current page and when not too. How to make product recommendations. Dealing with tax API's and shipping API's. You might consider downloading DashCommerce (a .net application) or something similar that fits your preferred technologies to see how they have set things up. Install something. Get it set up to feel the pains for data management. ...also to feel the pains of navigating a shopping cart (adding products to the cart, updating the cart, checking out, setting up an account or having an anonymous checkouts).

Being an commerce developer generally means knowing how to work with Verisign (now paypal) or similar payment processing. How to intercept fraudulent transactions and deal with them appropriately. How to work in a high transaction environment (caching, tierd architectures, queues, web services). Cross linking products based on user history/profiling to maximize transactions (think candy at the check out stand of a grocery store). Knowing how to work in a secure manner with sensitive data which generally means encryption techniques, setting up DMZ's, working with proxies, etc. Take a look at using some form of a rule engine for order pipelines so that your business rules are separate from your application logic. Understand coupons schemes, discounts, etc. Frequently ad campaigns are heavily used for generating side income.

Ecommerce can be a big topic!

Andrew Siemer
Thanks, this is a very descriptive answer. I'm going to write my cover letter and then start looking in to all these different areas!
Carson Myers
+7  A: 

eCommerce has one big word that goes with it Security.

Do you feel confident writing secure code? Bearing in mind that your code will be handling the users credit card information.

Now, there is alot that goes into building an eCommerce solution from the ground up

  • Product Listings
    • Adding/Removing Items
    • Sort by size/shape/price/color/...
    • Search
      • Filtering results
  • Shopping cart (harder then it sounds)
    • Database or Session?
    • Adding/Removing Items
    • Checkout
    • Integration with payment API
  • Reporting
  • Inventory
  • Security
    • XSS
    • SQL Injections
Unkwntech
Hopefully they're not expecting a junior-ish dev to build a solution from the ground up. There is certainly a lot to account for.
Larsenal
No kidding, Ive got years under my belt and I know the system I built is no where near ready to go live yet!
Unkwntech
This question is more direct... And you make a strong point about security. I've practiced sanitizing inputs and the like before, but I'll be doing a lot of reading and practicing before working on something which HAS to be secure like this
Carson Myers
This answer* is more direct. Whoops
Carson Myers
Even if you don't have to build the system from the ground up, all of the above are still issues that you will need to be aware of.
Unkwntech