To be an integration developer is a very different experience from any other kind of developer. Your database knowledge is equally important to your programming knowledge. This isn’t your typical power house a project kind of workflow. You need to juggle (in my experience) up to seven different projects at any given time. Able to switch between projects at the drop of a hat . Here are some general concepts that can help you hit the ground running.
1) Learn To Broaden Your Focus
As I said earlier, you need to be able to juggle multiple projects at once. Always being aware of what is still required for each project. Often times you’ll want to power through one specific project, but this is hardly ever the case. There’s always a new question to ask the client. Every client has different wants and needs, and you can never guess what that need is. Your only option is to ask questions. Ask lot’s of them if you need to, but always ask.
Ask your question, and switch over to a different project. Like the Donkey framework itself, you never rest. There is always new functionality to add to a new project, code to clean up, QA tests to run.
2) DATA DATA DATA DATA DATA DATA DATA DATA
This job is 100% all about DATA. Visual representations are at an absolute minimum. Your only resources are a pen and paper, and your brain, (and the data your clients send you of course). Every data source is different, and the very core concept of this job is manipulating each different data source into data that Magento can understand, and in some cases, converting data from Magento into data that an ERP system can recognize. If building UI’s is not your idea of a good time, and endless rows of data manipulation does sound like your idea of a good time. You might want to consider integration as a potential future for yourself.
3) Details – Even The Smallest, Matter
The hardest part of the integration job is learning all the little ins and outs of integrating for Magento. What can break your code. What works, but also breaks products you upsert, there are an infinite amount of possible ways that the data you’re upserting is incorrect. Storeviews, and attributes, and categories oh my! You are always challenged about how something broke, and you’re always challenged on how to fix something that broke (in an eloquent and efficient way). This leads me to my last point.
4) You Are Always Going To Be Challenged
You will always need to use your head to solve problems. You will always encounter a new problem. Not too much to say on this point, but just know that there always is a solution. It’s always out there. You’re always able to find it and develop it into your code. The harder the challenge, the sweeter the victory.
I make this seem like a nightmare of a job, and to some people it will be. Not me. I live for the challenge, always testing myself, always bettering myself. You WILL learn a lot as an integration developer. Right now I couldn’t imagine doing anything I like more than this. If the idea of seeing
“System.NullReferenceException – Object reference not set to an instance of an object.”
and other similar exceptions 50+ times a day doesn’t frighten you. You might have just found your new home.