I had a fun chat with some of the guys and girls of the London Java Community (LJC) this week.
There were a few of the usual war stories - like the guy who was talked into going along to a job interview and found that the company had a very zealous approach to "not invented here" technologies - to the extent that they had actually produced their own source control system.
Not embracing open source is one thing, but reinventing the wheel is another extreme (unless you happen to be Linus Torvalds).
A few pints of Magners into the evening, discussion turned to a recent blog post by someone who was calling out ORM as an anti-pattern.
During my first year in London I took the time to read Java Persistence with Hibernate. It gave me a greater appreciation for what Hibernate was capable of, and an understanding of how easy it could be to generate poorly performing data access (such as the infamous N+1 queries).
When it came time for me to wear the "Technical Team Lead" hat on an e-commerce project, I learned the hard way what effect a seemingly trivial design decision could have. At the time the Hybris e-commerce platform included a proprietary xml format for producing Java classes representing persistable objects. The way that the objects can relate to each other could result in database table structures that were not SQL friendly - which made the search engine indexing less useful.
It's my strongly held belief that no matter how good your ORM system is, there will always be a time when someone has to pull out alter table and friends to refactor.
NB: NoSQL systems have not been considered in any of the above statements.
Stephen Souness, a Java developer who moved back to New Zealand after over a decade in London, sharing some thoughts on what's happening in the world of Cloud computing, Java and database technologies.
Showing posts with label Hybris. Show all posts
Showing posts with label Hybris. Show all posts
Thursday, 22 September 2011
Sunday, 3 October 2010
E-commerce projects experience
One of the problems of having over a decade of commercial experience developing software, is that I really can't fit enough information onto my CV without putting off recruiters.
This post might act as a supplement to outline my e-commerce project experience.
My most recent e-commerce projects have involved me designing and developing for the following technologies, integration points, and key functionality:
Earlier in my career I developed bespoke online purchasing systems as part of existing sites that I had responsibility for extending and maintaining.
This post might act as a supplement to outline my e-commerce project experience.
My most recent e-commerce projects have involved me designing and developing for the following technologies, integration points, and key functionality:
- Hybris 3.1 and 4.0 clustered.
- Commidea web service version 4 for online payment processing
- Some familiarity with PCI compliance
- Facetted navigation to enable filtering of products based on attributes
- Google Analytics including E-commerce conversion and site search
- Mailbrain and Prolog formats for order fulfilment
Some of the more generic technologies involved include:
- Spring 2.5, web service client resource pooling
- Tomcat 6, Servlets, Filters, Portlets, eXo
- Apache httpd, Redhat Enterprise Linux on Rackspace hosted servers
- MySQL, Java 6, Apache Axis SOAP web services
Earlier in my career I developed bespoke online purchasing systems as part of existing sites that I had responsibility for extending and maintaining.
- An online stationary ordering system
- A ski pass registration and sale system
- Online interest registration system with colour-coded map of township lots available for purchase
Labels:
Commidea,
e-commerce,
Hybris,
order fulfilment,
payment processing
Subscribe to:
Posts (Atom)