RIA RockStars

spacer Tweet

A manager’s take on the state of CF – the scarcity talent

by Tariq Ahmed  |   View Comments

Every now and then there’ll be a post touting how alive and well the ColdFusion industry is, its thriving usage, and vibrant community.


And then there are posts about the current struggle of things, and the apparently simple solutions needed to get back to glory.


This post is more a statement of observation based on personal experiences, and you can draw your own conclusions.


I’ve been into ColdFusion since its v4 days, where doing any sort of web programming in other languages was an enormous pain in the butt. Back then I had been using C++, Perl, and Java – and coming across ColdFusion was like a gift from God. The productivity was undeniable, and made for an easy business justification.


One of the issues I see when people give their declaration of the industry is that it’s from purely technical eyes (which tends to be black and white). As an I.T Manager I look at things from both technical and business, and the reality is that it’s always about the business.


Based on observation, my perspective on the ColdFusion ecosystem is that it has shrunk over the last 5-8yrs.

ColdFusion Apps Rewritten

Every place I’ve worked at has put in significant efforts to rewrite any important ColdFusion applications on to another platform, and retire the unimportant ones. Those companies include REUTERS and eBay.


Just within my circle of fellow Managers of Web Development teams, I’ve seen a number of them also switch over to other languages.

The search for talent

One of the primary catalysts for these rewrites is the clear shortage of talented ColdFusion developers.


Management peers would all agree, regardless if they’ve stuck with CF or moved onto something else, that finding resources is a long, expensive, and arduous process.


5 to 8 years ago, a job posting would yield a nice batch of resumes from local candidates. Now a days, colleagues and I, will get less than a handful.

Make our own CF developers

So we’ve had to adapt our strategy. We don’t look for ColdFusion developers anymore, instead we just look for talented coders in general that are willing to learn CF. Tapping into the expansive PHP, Java, and .NET talent pool has yielded more candidates who tend to have a strong understanding software engineering concepts.


This works really well when you’re going after Jr. and Intermediate level, but it’s tricky on the Senior end of the spectrum as Senior coders have invested many years developing a thorough understanding of whatever it is they know – and you have to provide one hell of an incentive to make it worth it for them to jump onto a different core platform.

Expanding the search

The other part of the strategy is we’ve gone national in our searches. The joke in the Silicon Valley/Bay Area is that everyone has worked for everyone, since there are so few remaining ColdFusion shops.


We’ve gotten lucky in this area and found folks who are willing to relocate, or are in the process of relocating and we’re able to get our foot in the door ahead of the competition.

Shrinking developer base

The anecdotal feedback from CF colleagues is that it has also become progressively hard to find ColdFusion jobs. So when businesses struggle trying to find talent they’re prone to switch to other platforms, and the number of jobs shrinks. This in turn also causes the talent to adjust their strategies as well.


Anyone who is part of a CF team rewriting to a new platform gets the opportunity to pick up some new skills – and knowing how tough the CF market is, they prefer to move in the direction of their new skills.

Evolving onto other platforms

Another part of our strategy (thanks to the efforts of the CFGroovy project), is to evolve onto another platform. So instead of a focused effort to rewrite the platform, we have ColdFusion and Groovy working hand in hand with each other, which enables us to build new features in Groovy while being able to maintain the existing functionality.


If you’re not familiar with Groovy, it’s a language that runs on top of the JVM (just like ColdFusion). You could view it as a re-incarnation of Java that focuses on making coding super fast and insanely easy, and then it has a kick ass web framework called Grails which takes that even further.


From a business strategy perspective, it allows us to keep the platform and team’s skillset current, but also allows us to tap into the huge Java talent pool as Groovy allows Java developers to use their existing skillset.

This didn’t happen overnight

This isn’t something that has recently come to light. The state of the ColdFusion ecosystem has been a transformation that has been occurring over many years, and it will continue to do so until it hits a point of no return similar to Cobol.


There are more active lines of Cobol then there are of any other language. In many cases it doesn’t make business sense to rewrite a massive mission critical application. No one in their right mind would get into Cobol as there’s no growth, but at the same time there’ll always be legacy Cobol applications in existence and they need maintenance.


I’m not saying ColdFusion is anywhere near that. Unlike Cobol, the ColdFusion community is insanely passionate about this technology. And don’t get me wrong, I also love ColdFusion, it has made me look like a hero on many occasion.


However on the business side of life I can’t afford to think emotional, and what I love will come in second place when it comes to platform viability, business longevity, and total cost of ownership.

Moving forward

It could go either way, and I hope the trend is in the positive direction.


And if you think this is a slam against ColdFusion then you’ve misread me – I want it to succeed, but we need to be honest about the issues so that we can address them. In hiring non CFers and training them I’ve helped grow the community in my own small way, whereas most other managers will just stick to those who have existing CF experience.


It’s a chicken and egg situation. If there is a lot of demand for CF, the talent will come. But the demand for CF won’t exist if there’s no talent.


But much like it took many years to get to where we are now, it’ll take many years to bring CF back to a level of glory.


And what is the definition of that glory? One thing CF excels at is being an integration platform, gluing and hooking into all kinds of technologies and making it easy to work with them (PDF, Exchange, Excel, Zip, FTP, Hibernate, ExtJS, Databases, Verity, Lucene, Apache Axis, Flash, Flex, .NET, CF-SAAS, etc…). Perhaps it should reposition itself as an integration technology and provide interfaces for the big languages to hook into.

CF does have a lot going for it

It’s no ones fault, and perhaps it’s probably the just the natural cycle of technology life.


Certainly Adobe has kept up the technology with offering mind blasting new features with every new iteration, and the recent announcement regarding the CF product management realignment at Adobe will continue that momentum (see Adam Lehman’s blog).


As well their community support programs I think are awesome such as the user group support, Adobe community professionals, and Adobe community champions. Most people don’t even know but Adobe also has an employee volunteer program, software donation program, K-12 educators support program (T3 Program), non-profit training, and ultra discounted (if not free) software for education.


Let’s also not forget the most passionate and tight knit user base I’ve ever seen. If you need help on anything, the ColdFusion community will line up at your door to help you. I’m a part of various technology communities none of them I’ve seen are as supportive.


There are a lot of ingredients in the soup of success, but a technology needs that critical mass of talent in order for it to be business viable. So how do we reverse that shrinking trend? Adobe would have to do something over the top, which would include a long term and extensive marketing plan to buy mind share, as well as provide an extremely cheap form of the product.


Bottom line: I personally have a lot invested in ColdFusion, so I’m eager to see it flourish – and I hope we can turn it around, but it’ll take more than product enhancements and an IDE to make that happen.

Btw…

We’re (Amcom Technology) always looking for talent, and the last part of our strategy is to form relationships with people. So even if we don’t have an open position available, we try to build ties with talent so that when a new position does become available at least we’ve got some people who know what we’re all about, and we know who they’re all about, and hopefully there’s a match.


So drop me a line (jobs @ amcomtech . net), and I’ll share with you what our environment is like so you can scope us out, and meanwhile we can get to know you as well. No big whoop. spacer

spacer

Tariq Ahmed

Software Development Manager at Amcom Technology (www.amcomtech.net), Author of Flex 3 and Flex 4 In Action, host of CFLEX.NET, personal blog at www.dopejam.com.

Website - Twitter - More Posts

  • www.bytestopshere.com Sami

    Nice post.

  • twitter.com/cfnerd Bret

    I plan on rocking ColdFusion for a long, long time my friend. Viva la ColdFusion!

  • twitter.com/headsplode Travis Makarowski

    To me it only makes sense to migrate away from CF if there is a requirement to NOT use CF defined by the customer or environment. Like you said, looking for potential employees with a development background of any kind should be good enough. CF is too easy to learn to not consider a “home grown” CFer. That’s how myself and a lot of people I know got into CF to begin with. We migrated away from asp classic to CF. One weekend and an O’reilly book later, our first site was well underway.

  • twitter.com/qasimrasheed Qasim Rasheed

    Nice post and I completely agree based on my own experience. Our organization is slowly but gradually moving to more enterprise products (business intelligence, business process modeling etc) instead of focusing on custom apps. In our case total cost of ownership has become significantly important over time.

  • pulse.yahoo.com/_OSSS7LD2EAF2XK6IRI3W7OVBH4 Cvec

    Nothing can be truer than this post. I have worked in about 3 places leading great CF teams but each time I move on, there is always a rewrite to a new language. Not because I did a crappy job but because no availability of resource.

  • Zzaffar

    I’m relatively new to coldfusion, mvc and ioc frameworks. I am impressed with how well coldfusion works Groovy. I agree as a developer I do think about how I will leverage this skillset, I’m banking on the knowledge of the frameworks since those concepts are more universal.

  • aftershox.com/2011/06/08/a-managers-take-on-the-state-of-cf/ AFTERSHOX » A managers take on the state of CF

    [...] recently wrote an article for RIARockStars regarding my take on the CF ecosystem and my challenge as a manager to find talented CF developers – along with some our hiring [...]

  • Sharon

    It is an issue in the CF community when a manager can feel more comforted by a large supply of developers (even if they have to do so much more work to parse through them all to find the gold.)  As a CF developer, it used to be so nice to see companies that used CF, because they seemed to be more willing to question the status quo, and choose the right tool.  Companies were pre-screened as well.  Is that still the case?

  • HP

    Great post! 

    Fully agree on several keys points – needs mass adoption, difficult to find the right talent, alternate avenues et. al. 

    My take is that beyond CF and other technologies …
    1) there is no application built on single technology – it’s always a mix
    2) focus is more on integration instead of building things from ground up
    3) industry is moving to packages instead of custom apps
    4) what goes down, does have a chance to come up … RoR, Python, Perl (with the move to Web 2.0 and Cloud – all of these have come back from the Graveyard). 

    In addition to the suggestions out here on how CF can further make inroads in to masses, i believe it also needs to … 1) have super simple integration with existing Adobe products Forms, Flash/Flex, PDF etc 2) be supportive and contributing to open source (Railo, BD) 3) evolve to the notion of free non-production environment 4) reach out to schools, universities and start attraction at that level 5) promote more standardization of methodologies and frameworks 6) have the community built it and Adobe market it, instead of the
    current scenario where Adobe is building it and the community is trying
    to sell it.  

    Having worked with CF for a very long time and author of ColdFusion tests since version 4, would very much like for CF to succeed among the masses and transform itself from Saks/Nieman Marcus/Barneys to being the Walmart/Target/Sears (just an example, not meant to be offensive to any one).

blog comments powered by Disqus
gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.