Real-World Advice for New Salesforce Developers

At this years Dreamforce (2014), I did a talk about Career Strategies for Developers Transitioning to Salesforce. I interviewed several developers, who all had some great advice to share. Even though I have spotlighted three developers who had a lot to share, this post is a summary of some of the best advice they ALL offered for those developers new to the platform.

EricBellEric Bell – Salesforce Developer at Polymorph Corporation

“As in everything else execution is critical. Newbies will make many, many mistakes but it in the actual doing it that they have the best chance of learning, improving and mastering. They need someone with experience to review their work and make improvement suggestions. This is the only thing that counts in the end – doing it.”

RahulBorga  Rahul Suresh Borgaonkar – Salesforce Developer at SYNETY PLC

“Certification will give you basic knowledge but experience counts a lot. Always try to get hands on approach if you find anything new as you will remember it for future use. Read latest blog updates and developer board all the time. Get inspired by people who have achieved all Salesforce certification and try to follow them. This will refresh your knowledge and keep you in learning mode.”

MichaelClaytonMichael Clayton – Software Developer at American Thoraic Society

“Go light in salesforce. the ease of development can sometimes encourage bad habits, like quick and dirty code.”

HargobindSinghHargobind Singh – Technical Architect at Acromobile

“Read Documentation, End-To-End. No exceptions or shortcuts. Study guides, e.g. Apex Guide, Visualforce Guide, and Apex_API.pdf have a lot of information. Though it takes time to read, and it might seem that just reading relevant topics is enough… but this would be time well spent. There are so many aspects of everything in Salesforce that knowing things completely is the only road to success. In addition, if a developer knows all aspects, they can implement an optimum solutions. In my whole career, I have seen a lot of newbie developers writing non-optimized code, and using code where they can use point-and-click, or not implementing not-to-hit governor limits. “

JasonHammerleJason Hammerle – Salesforce Technical Architect at PROS

“If you already program in Java or C# then the transition will be very easy for you.  If you are a front end developer then your experience would likely be extremely valuable to a Salesforce development team.  And to all other developers (and even managers), you can be a Salesforce developer too by leveraging the great Salesforce training course, Salesforce resources, Success forums, blogs, and the many many people (like Sara) that have already transitioned and really want to help you.  I also very much would like to help anyone that wants to make this transition too.”

michaelwelburnMichael Welburn – Salesforce Technical Architect at 7Summits

“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! “

 

 

 

Salesforce Developer Spotlight: Michael Welburn

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 Welburn, Developer/Consultant at 7Summits  michaelwelburn

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!

Salesforce Developer Spotlight: Eric Bell

This is the second 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“.

EricBellEric Bell, Polymorph Corporation

Eric has a broad range of experience working with systems for .NET, Windows, Java, Linux, front-end, back-end, database, etc. In 2002, he published “Fundamentals of Web Applications Using .NET and XML“. Even though he had focused primarily on .NET technologies with his start-up company, he recently decided to embrace the Force.com platform head-on. Here is the rest of my interview with him:

What was your main transition approach, or was your transition very sudden?

 I was asked to take a few days and learn what I could about SF. After those few days we (team of 4) planned our approach. We were thrown into the deep end of the pool and failure to swim was not an option.

 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?

 For that and then two ensuing projects I learned on the job using Google and SF as my principle means to find out how to work SF, what best practices were and where the bodies were buried and there are always bodies buried.

 I pursued a cert only last year for it’s “check the box” cache. I’m going for the advanced dev cert at this Dreamforce (and yes, I’m coming).

 I’ve had no formal training and after speaking with other who have know it can be valuable. But my background in development and development practices carried me very far quickly. In a way that’s just part of my job.

What are some of your favorite online resources for learning? Do you have any favorite blogs that you follow?

My online resources are centered around search engines leading me to blogs, articles other floating on the net coupled with the SF sites themselves. As to favorite bloggers I don’t have any that I read regularly. However,

Did you get any advice from other developers and if so what was the most helpful?

Actually I know an admin who has more technical architecture knowledge of SF than anyone other that I met so far. From him it’s little things that I’ve learned and put into practice that have help enormously in the the last year.

I have other developers that I know and sometimes ask for help but even with advanced knowledge most are unable to think creatively enough to help me. More by rote than inspired thinking.

What are you doing now and how did everything you do prepare you for it?

I continue to consult but now split my time between SF and digital marketing (fixing website funnels, primarily). As to SF having years of experience in software development was my preparation. In SF I mainly do physical integrations – “take these three web services and marry them with SF to build a bigger animal”.

If you had to do it all over again, what would you do differently in your transition approach?

Nothing. I like the challenge diving into the deep end of the pool.

Anything else you want to add that you think would be helpful to developers transitioning?

I thought about this question and realize that there is a lot of advice I can give on a situational basis. Front end guys, back end guys, DB guys, analyst guys, (I can almost hear the Oscar Mayer Wiener jingle as I write this).

But the one thing I know to be true having seen first hand the problem newbie developers run into is just being on a project, with goals and doing it. As in everything else execution is critical. Newbies will make many, many mistakes but it in the actual doing it that they have the best chance of learning, improving and mastering. They need someone with experience to review their work and make improvement suggestions. This is the only thing that counts in the end – doing it.

Salesforce Developer Spotlight: Jason Hammerle

This is the first 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“.

JasonHammerleJason Hammerle

Salesforce Architect for Cameleon Software, a PROS company

Jason, who recently passed the DEV501 certification test, has been working with Salesforce for the past two years. But Jason is no newcomer to software development. He has been a professional software developer since 1994, when he began his career as a computer programmer at NASA. It was there that he developed a C++ and X-Windows application used to plan Space Station and Shuttle missions. You can read more about his programming background here.

Jason has worked with many technologies and platforms over the years, but it was his exposure to a Dreamforce session one year ago that ignited a certain spark in him. The following are Jason’s own words about what led him to becoming a Salesforce Developer and why he likes it so much:

What was your main transition approach, or was your transition very sudden?

It was very sudden and exactly one year ago.  I had just taken a HOT session and I was sitting on a bean bag practicing what I learnt in an Interfacing with Salesforce using REST class while listening to 80’s music.  At that moment, I realized why Salesforce was so successful and why I was going to devote the rest of my career to this fantastic platform.  Specifically, Salesforce understood how to make the developer experience very cool and very fun.  We hear a lot about user experience but less about developer experience.  Good software requires good user experience and a good platform requires good developer experience – and Salesforce has the very best.  At that time, I was managing a large salesforce team, a dynamics CRM team, and two cloud teams.  My days were filled with double or triple booked meetings from morning until COB.  I decided in the bean bag that my life was about to change and that I was a developer again.  I took PTO the week after Dreamforce and spent 30 hours developing a Salesforce 1 app to validate my decision.  I have not stopped developing since.

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?

In the Spring of 2014, I travelled to Dallas TX to attend the DEV401 training class.  A few weeks later, I travelled to Salesforce offices in San Mateo, CA to attend the DEV501 training class.  Both instructors were really great teachers each with their own very unique style.  I passed the DEV401 cert in the Summer of 2014 and I hope to pass the DEV501 cert in Fall of 2014.  After I pass (while I wait for the programming assignment), I intend to purse two more certifications in Sales Cloud and Technical Architect.

 What are some of your favorite online resources for learning? Do you have any favorite blogs that you follow?

We have premier support so I heavily use the partner training portal to prepare for certification exams.  Also, I have a membership with pluralsight and think these video resource are a great way for developers to stay up to date and relevant.  I also follow several blogs like Sara Has No Limits, Bob Buzzard blog, Andy In The Cloud, Force365 – Cloud Architects, The Humble Salesforce Developer, et al.  I also started blogging myself on topics that I practice at work that I think might help others.  Recently, I have been working a lot with metadata api’s and so I probably reference Andy In The Cloud blog the most.  I have a lot of content from my recent experience that I would very much like to blog about when I can find the time.

Did you get any advice from other developers and if so what was the most helpful?

Yes, but it was a very weird situation.  I was managing (and leading) a remote team of very experience Salesforce developers (all in Bolivia) and then swapped roles with a technical lead (in Houston) that wanted to pursue management.  Most of my remote reports were now my peers and it was difficult at first to get advice from them.  Once the other developers saw that I was very serious about changing role – the certification helped – and they realized that I really did want to follow the technical path then they really helped me out.  Two of the Bolivians visited for two weeks.  During this time, they helped me to switch from Eclipse to MavensMate, work with Git and Stash (previously I only worked with Mercurial and other like versioning software), and – most of all – they really really challenged my code.  My years of being a professional developer came back to me very quickly during their visit which really motivated me. 

What are you doing now and how did everything you do prepare you for it?

After the Bolivians visited, we sprinted together for four three-week sprints developing a managed package.  It has been the best 12 weeks of my career by a long shot.  I am really looking forward to working with Salesforce over the long term to really master the platform.

If you had to do it all over again, what would you do differently in your transition approach?

Nope, I would not change a thing about the transition approach.  I use to go to work every day as a manager.  Now, I go to work every day to play with my favorite hobby.  I look at every work day like I would a fun vacation day on the slopes in Telluride or on the beaches in Maui.  I truly love my job and more than that – I love knowing what I am going to be doing for the rest of my career.  There is a clear difference between management and developer.  I liked management but development has always been what I truly love to do.  If I could do parts of my career over again, then I probably would not have gone into management.  With that said, I am a better developer now for it.

Anything else you want to add that you think would be helpful to developers transitioning?

If you already program in Java or C# then the transition will be very easy for you.  If you are a front end developer then your experience would likely be extremely valuable to a Salesforce development team.  And to all other developers (and even managers), you can be a Salesforce developer too by leveraging the great Salesforce training course, Salesforce resources, Success forums, blogs, and the many many people (like Sara) that have already transitioned and really want to help you.  I also very much would like to help anyone that wants to make this transition too.