This is the third in a new series of posts that will spotlight one Developer who has successfully transitioned to Salesforce. The people in these posts were interviewed in order to share their transition experiences with other developers. This information was used as part of a Dreamforce 2014 session titled, “Career Strategies for Developers Transitioning to Salesforce“.
Michael completed the Salesforce Advanced Developer Certification back in January of this year and has a lot of great advice to share with others wanting to follow his path. Formerly a Java developer, Michael was thrown into the world of Salesforce development very suddenly when his company assigned him his first Salesforce project. Even though his Java background helped a bit, he learned a lot of lessons through trial and error.
I am grateful he took time out of his very busy schedule to complete my interview. I think we can all learn a lot from each other.
Can you tell me a little about your background and the type of development you were doing prior to learning about Salesforce?
I graduated from University of Illinois – Urbana Champaign with a degree in Computer Engineering. I spent the next ~3-4 years doing a lot on the Java stack consulting on Documentum projects. Lots of Java, JSP, Tomcat, SQL/Oracle.
What was your main transition approach, or was your transition very sudden?
My company was starting a Salesforce practice and the first project (a single VF page and class) needed to get done. I was unbillable, so I got roped in without any idea what Salesforce was. Having a Java background helped quite a bit on the Apex side, but I ran into a lot of problems dealing with things like governor limits that blindsided me. Mostly I just fought my way through whatever tasks were tossed on my plate, learning what not to do and best practices as I went.
Did you pursue any certifications? Did you take any online or in-person classes? What other types of training did you do to learn about Salesforce?
I picked up the Dev 401 shortly after starting, which studying for helped demystify a lot of the platform. About a year later I started work at another company that was all for certifications, and I had some down time, so I cranked out Admin, Advanced Admin, Sales Cloud, and Service Cloud in a month. I found that working on a lot of smaller engagements over that year helped me be extremely prepared for those tests with minimal amount of studying. Then last fall I decided it was time to take Adv Dev 501. I felt pretty prepared, though there was a handful of material I had simply never used on my projects, and studying for that opened my eyes to a bunch of new ways of accomplishing things that I’ve integrated into my toolkit.
What are some of your favorite online resources for learning? Do you have any favorite blogs that you follow?
The Salesforce documentation is my #1 google result, looking for objects and fields. I subscribe to a handful of Force.com MVP blogs, particularly enjoying what Reid Carlberg, Jeff Douglas and Matt Welch have put out in regards to taking the platform to new limits.
Did you get any advice from other developers and if so what was the most helpful?
Unfortunately I was in a position where I did not know any other person developing on Salesforce, nor had any coworkers developing, for almost a year. I had to self teach myself pretty much everything (and I did not realize the depth of content available on the internet for that same amount of time). I’m glad that I discovered a lot of best practices via my own trial and error, but having some coworkers on the platform, or even reaching out on #askforce on twitter or the salesforce stackexchange site makes solving problems far easier.
What are you doing now and how did everything you do prepare you for it?
I’m a Technical Architect at 7Summits, helping build out their Salesforce practice that is particularly focused on creating online experiences to transform businesses. It is really exciting to see the UX/UI team that we have build awesome front ends on top of the Salesforce platform, and time and again the people I work with tell me how shocked they are that the backend work can be done so fast.
If you had to do it all over again, what would you do differently in your transition approach?
I would have spent a little more time trying to find helpful resources before punishing myself with trial and error, and I would have made more of an effort to find other developers working on the platform to bounce ideas off of. I have a hard time remembering what the ecosystem was like back in 2011, but the last couple years it has really exploded on the internet, to the point where there is always someone willing to help out on a variety of websites.
Anything else you want to add that you think would be helpful to developers transitioning?
Pay attention to the best practices that are documented, you will see them ALL. THE. TIME. https://developer.salesforce.com/page/Apex_Code_Best_Practices The workbooks that Salesforce provides for Force.com, Apex, and VF are also extremely helpful. https://developer.salesforce.com/page/Force.com_workbook Beyond that, just get your hands dirty in a dev org!