Thursday, May 15, 2014

Why is it so hard to find Delphi developers?

Delphi is fu^Hracking awesome! There's no question about that. Sure, it could always get better, but it says something that WideOrbit has a very successful application (or three) written in Delphi. Managing billions of dollars... OMG, did he just say the F-word? ;)

But why is it so hard to find Delphi developers in the US?

I know for a fact that there are lots of active Delphi developers in the US.

Are Delphi developers totally happy in their jobs? Well paid, not wanting to move. Settled down with the best job and tool around?

Are Delphi developers in general heads down in code all day and not on LinkedIn, FaceBook, Twitter? Some maybe, but far from all, and the ones that are won't respond to this post anyway... ;)

Or is there another reason? Am I spamming people too much with open Delphi reqs? :)

Do you have a Delphi project? What's your recruiting secret? (like you'll tell me) ;)

Thanks, and make it a great Delphi day,
Anders

56 comments:

  1. There are so many hot areas for programmers (mobile app, webapp, big data). For these areas there are enough free develop tools and resource available. Why people will bid their whole career on Delphi, an extremely expensive commercial development tool? Market decides the trends. No offense, I also speak Delphi, but I am hired as a Java developer.

    ReplyDelete
    Replies
    1. I know you said Java, but believe it or not, it's even harder to find JavaScript guys than Delphi guys.

      Delete
  2. I think we all know the truth - no free edition of Delphi causes lack of new devs...

    ReplyDelete
    Replies
    1. I have a .NET background and I develop in Delphi since more than 2 years , and , If i must start my own business (something like creating my own software in my garage) , it's totally obvious that I have a lot of better choices to start my business : SharpDevelop for .NET, Python, Eclipse , ......
      All are free and can produce business quality app.

      And PLEASE, don't tell me "but lazarus" .....

      Delete
  3. You have no future using Delphi nowadays as a developer. Nobody writes Windows applications anymore. That's the truth. If you wanna be competitive on the market you must use other development tools which most of the time are cheaper and better. Me too started as a Delphi developer, now I'm using Java most of the time.

    ReplyDelete
    Replies
    1. That is a myth. Clearly WideOrbit is hiring Delphi developers and writing Windows applications. Line of business applications are still dominantly running on Windows. The best Windows application development tool is Delphi.

      Delete
    2. Wow, this is nonsense. Windows applications, and native ones at that, are no less significant than they were 20 years ago. We compete in the UK in a sector with over 500 other software companies, and they are all producing Windows desktop applications.

      Of course, web applications are just as significant, but in my (plentiful) experience, the web application is used as a nice front end for easy use, whilst the Windows application is used as the management tool behind it, used for setting things up, reporting, etc.

      And when you're writing enterprise-level software, they want server based functionality and the ability to do things like scheduled tasks. You can't do that in a browser.

      Delete
    3. Sorry but just like most Delphi developers, it seems that you are mixing business logic with GUI. Browser is just a front end, all the business logic should be in the server, especially in the enterprise software. You don't implement the functionality of scheduled tasks in a browser. It may sound harsh, but Delphi is not the primary nor the secondary choice of server side software development.
      I agree that Delphi is being used in some legacy applications. But for the new projects and development, it's not even being considered as a option.

      Delete
    4. "Delphi is not the primary nor the secondary choice of server side software development. " I guess Linas got a point. Embarcadero stubbornly consider Delphi as a "desktop GUI generator" only, as if it Windows was still Win 3.x and no Windows servers. In the past 25 years a lot changed for Windows developers, but Delphi developers mindset didn't. Look, for example, at how lame is Windows services implementation - it still calls APIs that were obsolete since Windows 2000. Most sever features are out of reach when you install a $2500 "enterprise" tool, and you have to do most of the plumbing yourself if you want to write a "modern" Windows application. That's also true for high-end desktop application, that does more to show a TDBGrid connected to a remote database thanks to the DB client.
      "Power developer" are driven away from Delphi because lack of focus on "power applications", "RAD" developers are now mostly coding web frontends with one of the tools available. Delphi is in a "no man's land" where it appeals to very few new developers.
      News about the new compiler being slower in floating point code and still lacking a modern codegen taking advantage of the latest CPU instructions and architecture doesn't help at all... and let's not talk about a memory manager still inadequate for heavy multithreaded applications.

      Delete
    5. WTF? Delphi does mobile, web and server.

      Delete
    6. And does all the three very so-so. Web? They attempted several ways, and all of them failed. No one really uses Delphi as a web application dev tool. Server? Delphi Windows services use still a Windows NT4 implementation. No frameworks for AD integration. No help to build a MMC snap-in. No libraries for security. Totally unaware of latest Windows sever technologies. Datasnap is joke, especially from the security point of view. As kmorwath says, the MM is not good for heavy multithreaded server applications. SOAP implementation is partial and outdated, because the now everything should be JaSONized. Messaque queue are something foreign to Delphi developers. Etc. etc. Yes, WTF...

      Delete
  4. I've been working to hire developers a few times, both Delphi developers and .NET developers. I've found they were both as hard to hire when you are trying to hire good ones. The reality is you are trying to hire senior developers with a specific skill set, and that is tricky, no matter what the skill set.

    At a previous place I worked management decided that there were more .NET developer than Delphi developers, so the decision was made to write the next project in C#. Two C# consultants were added to the team. After we got to know them we discovered they actually had more experience as Delphi developers than with .NET, but they believed there were more C# jobs than Delphi jobs, so they updated their resumes. Of course the project complexity spiraled up significantly with the use of .NET instead of Delphi (as seems to happen when tools are selected for the wrong reasons.)

    ReplyDelete
  5. It's just many Delphi developers are not worth of hiring, believe me. A lot of them are ageing, with outdated skills (they can't develop beyond Windows 95 - they *still* write applications as if the target OS is 95), all they care of is some new GUI widget. They are happy to write their outdated database frontends, usually using some low-end db engine, and still looking for a dBase/BDE replacement. But most of this type of development moved to web solutions or the like. Today, native applications means more complex ones for more complex tasks. Something beyond the reach of the average Delphi developer.
    This, and the several, continuos mistake made by Embarcadero took Delphi off the radar of most good developers. The goold old ones migrated to other tools, more advanced, better developed, higher quality and lower TCO, and better accepted by customers.
    If you need Delphi developers, you have to train them yourself. And it's better if they learned to develop for Windows *without* Delphi. Otherwise what you get is someone just able to cobble some controls on a form and hope they work...

    ReplyDelete
  6. I can't comment on the US, but here in Ireland there aren't enough actual Delphi roles to keep people in the market, think I've seen one hybrid role advertised in the last year. I give up Delphi work 3 years ago simply because I wanted to change job (and wanted to for a while) and had literally no where else to go.

    As kmorwath alluded to, when we were hiring back in the day, I was often shocked at how bad some of the senior guys were because they'd built a career on dropping components and scripting events together. It became more pronounced as it became harder to get people.

    And with all respect to Jim, most of the work here is now web related in some way or other, and I doubt the US is any different. I'm sure WideOrbit is a cool company, and I still think Delphi is awesome, but relatively speaking it's only a drop in the ocean now...


    ReplyDelete
    Replies
    1. A few years ago there were a whole lot less options for development. Today the number of options is huge, which makes both hiring people finding jobs harder.

      Despite the efforts of many, no one technology is the best. It is a great thing there are so many technologies to choose from.

      I've found most good development jobs are filled through networking and less on general job postings. This is especially true of the Delphi jobs I've seen. I had a friend who is a Delphi developer who just got laid off and he said he was surprised how many people were beating down his door to interview him, despite not seeing any Delphi jobs in the local paper.

      Delete
  7. As kmorwath sad one of the big problems is that Delphi comunity is mostly made of older developers. Many of them didn't go with time so they still mostly use their "outdated" skils. And I must say that I'm sometimes shocked by other pepole knowledge or mainly lack of it.
    And there are verry few new developers starting with Delphi. Main problem to this is its high price. Which newbie developer would be prepared to pay 200$ for starter edition before he will even know if Delphi is a suitable development enviroment to him?

    Another dificulty is quickly changing language. Delphi language had quite some new features aded to it which means that many Delphi developers haven't got the time to bursh their knowledge on new features and are therefore a bit more reluctant on accepting new jobs as they are afraid that they won't met the required criteria.

    ReplyDelete
  8. Hello,

    here in Germany I tried to find a training place to Delphi programmer, but something it does not seem to give.
    With the end of Turbo Delphi, interest in Delphi broke new.
    If someone asks me, "Is there Delphi also free?" I reply: "Free Pascal and Lazarus." While Is Too bad, I know Delphi since I'm on a PC10 for the first time came into contact with it, but embarcadero is not interested in a large quantity of Delphi users (so I feel).

    Greetings from Germany
    Heiko

    ReplyDelete
  9. Maybe I think simplistically, but Delphi as a vertical tool was in the last 10 years not so competitive:
    - language/IDE was clearly behind, as of today we can say it fights VS 2005 SP1 with WPF
    - the community is too small to matter, meaning that entering in Delphiland you have to pay expensive components.
    - Java and .Net and ObjectiveC for their mobile targets offer free IDEs (or less than 10$).
    - Pascal/Delphi is not specified (yes, it is before OOP) so it means that you go against two incompatible specifications and they are worse than Java vs Android VMs or Mono vs .Net and you cannot fix your unspecified behavior. The single way is to buy a new IDE every X months

    I am a .Net developer now and I love IntelliJ IDEA Community with Kotlin. As an opensource editor I've got a free Resharper from IntelliJ (which is years ahead of Castalia for example) and both communities (.Net/Mono and Java ones) are inclusive and friendly.

    I was a Delphi developer "by force" as I had to maintain a big Delphi project (withouth being Delphi programmer) and when I needed performance I rewrote the code in Java: two commands in Maven (I was helped a little by a Java developer), 2 pages of code. This tool as development tools cost involved was more than 1500$ dollars of difference (Delphi XE3 + PDF component vs Java Runtime + free PDF components).

    ReplyDelete
    Replies
    1. So you tell us - you are not a Delphi developer and found it more attractive to work with the tool-set you are used too or something somehow comparable and needed assistance from someone else. Don't get me wrong, where is your point?

      You are not willing to learn something new even in your job. That's a weak argument. You are not alone. That's called the employee - the human in socialism. .net and Java had been career drivers especially in India.

      I'll give an example. Indeed I know how to build even huge data-warehouses on SAP-BI - just a matter of the data-center technology and the blades used combined with in depth expertise. In case of being located at a customer's site who uses analysis services I prefer to use Oracle because PL-SQL is somehow similar to ABAP. From this I conclude that Analysis Services are not an appropriate choice but the users still do the analysis that way and need to do more.

      WPF. The situation is similar to Porsche vs. Lamborghini. We are not discussing at the level horse vs. car. WPF is an amazing example for a sound technology that allowed to implement amazing things if someone did. I agree that frameworks allow you to build amazing things quickly. There is no doubt about that. Did the majority move from Winforms to WPF?

      Forget comparisons. They are always right and always wrong. Indeed I would not write a banking application using Delphi. I would not write a banking application using .net either and also not using SAP.

      I agree that Jetbrains has always been amazing. Wondering how many people used IntellJ when everyone praised Eclipe?

      All those arguments mentioned do not even touch the topic - Why it's so hard to find Delphi developers. They could be arguments for why it's easy to find .net and Java developers. Agreed on that.

      Delphi is expensive myth. Indeed the community is small and as a result from this vendors somehow located in civilized regions of the world have to pay taxes.

      Delete
    2. Delphi *is* expensive for what it offers. Sure, there are those who don't want to pay for software, and any price > $0 is too high for them.
      But there are people willingly to pay for tools that make their job easier and customer happy. Unluckily Delphi fails to deliver enough for what it costs. There are the quality issues, there are the lack of features for server-side development as Linas and kmorwath say above, there is the lame support for non-Windows platforms due to Firemonkey, and so on.
      It's difficult to justify the actual Delphi price for a beginner - because it doesn't open much job opportunities -, and even for a seasoned developer, because there's little value for what you pay, if your needs go beyond the database frontend and the simple portable mobile app.
      The foolish six-month release cycle and upgrade limitations don't help either, they could force some actual users to upgrade more often and get SA or whatever is called now, but it's an higher barrier for other users - and the lack of support for older version is another issue you perceive as an higher price, "what, I spent $$$$$ four months ago and now the product is already unsupported despite the bugs I find??"
      Embarcadero put itself in a lose-lose situation. It needs more users, and because of the so-so state of its main product the only way to get more would be giving it away for free, or almost, because it's not appealing enough to have people pay for it. But it can't, because many of its actual customers would switch to the free one as long as it's powerful enough, and it would impact revenues substantially, and there are not much more revenue streams.
      IMHO the only way to survive it's making it a niche bur very appealing product for some types of development, but it would require an high-quality, powerful product, and they went the opposite direction - trying to save on development investment and expanding the product well beyond what they are able to manage hoping that "quantity" could be more appealing than "quality". But most developers aren't keen on paying for "quantity" alone.

      Delete
    3. This comment has been removed by the author.

      Delete
    4. Luigi - agreed. In how far is that related to Anders' question. Anders will very likely have an idea about the number possible candidates that could be found. I think he is aware that just young inexperienced developers will very likely not be the preferred choice in general.

      In the U.S. - The U.S. simply outsourced beyond the point they would be in the position to re-grow a similar developer base again anytime soon. There seems to be a shortage in general. Young developers grow into a technology.

      SAP do have a similar problem. There have been attempts like offline training environments... The problem is not the IDE, maybe the system's complexity combined with high price environment, the demand for specialists - no customer allowed rookies to touch the system anymore not even accompanied by professionals (customers did not want the professional to wast time - so where should young blood come from...? You cannot pay a low salary to someone ambitious who should become a consultant one - those who accept the low salary are sitting in offices and have a nice easy life with no responsibility.

      Maintenance does have a lot to do with taking over responsibility.*) Why should someone move to Los Angeles take over responsibility when everywhere else shiny startups promise great job opportunities but forget to mention that there could be a slight problem once the next bubble bust within the next months - because all CEOs very likely believe they should be the winners of the race anyway. The CEOs maybe but not the employees. This rude awake will come.

      So there are 2 options left:
      a) The existing Delphi developers do have their products, support the existing customers, do the just regular job - I know many of those. They are hard to find. But they cannot simply stop supporting their customers in favor of wide orbit. Taking over existing solution does not pay - few business lots of effort - no one pays you for investigating code. In Austria that's too expensive. I think in the U.S. too. Many Delphi applications grew from good ideas by people (maybe electronic engineers) but failled to succeed to evolve beyond the point mentioned before. That's on of VB's problem. It's easier to argue - MS switch to .net. in 2003. (inevitable condition)
      b) Delphi developers took over responsibility and realized that more complex projects require a different way of organizing more complex software developments. In this point Ciprian Khlud is absolutely correct. The tool of choice had been Java and partially .net.

      Beside all valid arguments especially those given by Oliver Schwab - Simply said - Delphi developers are cute libertarians. I doubt they spend their time chatting in blogs... From that perspective WideOrbit would be an appropriate choice (We are all CEO's of what we do). It cannot be the company - if you look at the website - motivated people everywhere you look - but honest in general. Maybe they should place a standard Delphi like DB navigator on the website :) otherwise the Delphi guys don't know how to scroll to the next page. That's traditional Delphi - that's the pure spirit. Except one job that requires HTML5 and C# skills.

      In general the job offerings leave the impression to be a valid option for a young developers.

      Delete
    5. Oh sorry, S.F. L.A. was the other one ...

      Delete
    6. You asked what I wanted to prove:
      - on the original post he asked: why is hard to find Delphi? And my point was simply that: having various opportunities in life, you will pick options that will improve your future skills and Delphi doesn't provide this (at least for now). This comparison for me stated why people don't buy into Delphi in my mind.
      - the comparison of Delphi and Java (as a C# developer) is simply a comparison of two foreign languages/communities for me. Delphi required a fairly expensive IDE and some (expensive) components, when Java needed a to ask little help of someone and some free components (which are accessible at least granting a bigger community). So if I (or anyone) have a problem at hand and a new career prospect, what would you chose: Delphi or Java, it is likely people will choose Java.

      As a note: at least in the last 4 years of .Net programming I was working only WPF, no WinForms. (ofc this is my personal experience, around the world it may vary)

      Delete
    7. This comment has been removed by the author.

      Delete
    8. That's true. Indeed last decades career paths had been different ones. That's pretty much the main reason. I really respect you opinion that matter.

      I am not sure if we in Europe can guess from our experience and somehow relate that experience to the U.S. In Austria Delphi has almost been 'dead' since 1998 for Business Applications. There had been a few attempts on COM+ but the spirit of time shifted to Java.

      I personally use Delphi for my own stuff since I don't work as a developer. If we are looking at that matter from root cause perspective - the real root cause has been the high price for MIDAS. This was a message that totally fired back.

      My former business partner implemented a whole framework on Winforms first and migrated the framework to WPF on the GUI side. Lessons learned at the time of VS2005 + WPF (VS 2008 in the end) for ultimate speed you still needed managed C++ (separated piece). If you needed special GUI controls, did make extensive use of patterns, provided an application context, data driven ... .net WPF had been the choice. The only problem they run into is that the framework does allow you to implement complex, really complex GUIs and controls with maybe 100-200 lines of code. Too many implications for someone who starts. From a technical perspective the whole .net framework is a big plus as well as the Java framework in general.

      I think Delphi did not shrink it simply didn't grow.

      Delete
  10. I don't have to recruit anyone. That's the simple secret.

    ReplyDelete
  11. Speaking for myself, I don't want to move. I also enjoy overseeing projects from identifying a need all the way through retirement too much to step into a code writing focused role.

    ReplyDelete
  12. Most Delphi developers are older and more established in their communities. Getting one to move Hoover (or Meridian, MS in my case) for a Delphi gig is going to cost about 2x a San Francisco salary.

    But they would gladly switch companies for a remote position. Start offering remote opportunities and watch the resumes fly in.

    ReplyDelete
  13. I can tell you from personal experience that the reason why this highly experienced Delphi developer is "hard to find" is that there are few to no Delphi positions. The few that do exist want to pay too little and usually want devs onsite. I have NEVER seen a Delphi position that pays what I currently make. Ever. Usually they want to pay 70-80K, which is ridiculous.

    ReplyDelete
  14. I absolutely agree, we would gladly switch companies for a remote position.
    I myself am a senior delphi developer. Sure I develop using other languages as well, unfortunately you cant stay in business when you don’t know thinks like Java, net C++ or php or whatever. But delphi is my language of choice.

    Currently I'm working remote from my own office. And that works perfectly well. Satisfying both me and the company I'm working for.
    Unfortunately, the project is almost finished and I will have to seek new opportunities. So, if you are interesting in a remote senior delphi developer, please let me know. You can see some (not all, I'm bad in keeping my portfolio up to date) of the stuff I have done here:
    http://www.maxlogic.eu/portfolio/

    I totally disagree with some opinions made here about extremely poor skills of the older delphi developers.
    I'm maybe not “old”, but I'm developing since around 15 years, and I'm keeping up with the new stuff as are all of my co workers and friends.
    I agree that some developers, from all the languages, sometimes are so confident in their jobs, that they stop evolving. But anyone, that is a developer in his soul, will keep learning new stuff, will read the new books, will try out new features and new solutions and technologies. That is the fun in that job. This is why it never get boring.

    ReplyDelete
  15. You can hire me for $150/h but I'm not moving to Alabama. Full stack developer.

    Jason has the right of it in that you need to start using remote developers. I use oDesk and I have Delphi guys working for me from Vietnam, France, Macedonia, Georgia, Bulgaria, Netherlands, Algeria, and New York.

    Have one Delphi guy in your office interface with your remote developers and integrate their code. Training up a new developer in Delphi is also a good option.

    ReplyDelete
    Replies
    1. This is the future. I'm seeing more and more companies do this. The key seems to be working with the developers directly and not through a consulting firm. Not sure why that is, but working directly with the individual developers always seems to work better.

      Delete
  16. Also, try hiring a Java dev. It is just as hard.

    ReplyDelete
  17. Do you want the short answer, or the long one?

    The short answer is the good Delphi developers are also good at C# and Java (even JavaScript/Perl/Python/ObjectiveC or whatever is hiring these days) and you are in a competitive marketplace.

    btw: I wouldn't hire a Delphi developer who is not able to look at a chunk of C# or Java code and know which end is up.

    ReplyDelete
    Replies
    1. Mind you almost all the best C# and Java developers I know were also at one point experienced Delphi developers.

      Delete
  18. In the end WideOrbit are hiring people with top expertise but want young Delphi developers with about 3 to 5 years development experience, 2 years on Delphi with OOA/OOD. That cannot match. Delphi Developers left today and spirit of cooperation does not match either. There is a reason why cute libertarians work alone more or less.

    ReplyDelete
    Replies
    1. I have no idea what you're talking about here, Bunny. ;)

      Delete
    2. Oh ...
      http://careers.wideorbit.com/
      -> Who we hire vs. that
      https://career4.successfactors.com/career?career_ns=job_listing&company=WideOrbit&navBarLevel=JOB_SEARCH&rcm_site_locale=en_US&career_job_req_id=2901&selected_lang=en_US&jobAlertController_jobAlertId=&jobAlertController_jobAlertName=&_s.crb=2ulxbkRxoWG8LW4fzQxGQfRo%2b%2fU%3d

      There is nothing wrong with WideOrbit or the website. I think the messages simply don't match. You must have a better how many possible candidates you can address. But you asked why is it so hard to find -- Why don't they interact with us.

      Delete
  19. Small community and limited growth opportunities in Delphi have pushed out many of the better programmers and little reason for new skilled talent to seek it out. The ones that are left are often programmers that simply don't want to move on and learn yet another "future" language that isn't any better than the one they left or they are entrenched in an existing product. C# has been a nearly abject failure as MS cannot lock in one framework long enough for it to matter. I am thankful everyday we didn't port to Silverlight and are not knee deep in HTML5.

    That said many Java and C# programmers write overly complicated projects that are over engineered and have little knowledge of systems programming or resource usage. When we hire we generally stay clear of high level developers that have relied too heavily on a custom framework and focus on C programmers. It is MUCH easier to teach a solid technical programmer higher level coding than vice-versa.

    Just an opinion.

    ReplyDelete
  20. Come to think of it, the original question would be just as valid if you took out the word "Delphi". I personally know of several places that have had open reqs for Java developers for several YEARS and are even willing to train C++ and Delphi devs in Java to fill them.

    I think the problem is illustrated by a conversation I had with a neighbor kid who is highly intelligent. I suggested he get into software development and he quickly rejected the idea because "I don't want to sit behind a computer all day". He said he was going to pursue welding because he could make $25 an hour and be outside all day.

    America is losing the human capital infrastructure race that we once dominated so effectively. We'll be lucky if a few unfilled positions are the only price we pay for this.

    ReplyDelete
    Replies
    1. That's my observation too. Not talking about kids but intelligent people.

      Delete
  21. Delphi is having the reputation (at least in my country) as dying in the best case. Most actually consider it dead and have forgotten about it since Delphi 8 was released.

    Indeed active Delphi developers are rare jems.

    ReplyDelete
    Replies
    1. I've never been called a gem before, thanks :).

      Delete
  22. Relocation is certainly a barrier to entry.

    And are you sure you're getting the right message out? Software that manages billions of dollars is impressive, but from the ads alone, do people understand that WideOrbit treats its developers well, pays competitively, has some interesting and unique technical work, or offers the opportunity to work with some uncommonly smart people? The last two, in particular.

    Good developers have options. Are you making a strong enough case to catch their attention?

    ReplyDelete
  23. Thank you all for your insightful and helpful comments!

    I know for a fact that there are *lots* of Delphi developers out there. It's just a matter of reaching a couple with the right message.

    ReplyDelete
  24. If you would be ready to import Delphi talent from Third world then there are plenty. But your company is not ready to do any work for helping a developer getting H1 VISA.

    I think there is no scarcity of developers, only they are not located in the US! so think of importing them.

    HTH

    ReplyDelete
  25. "is not ready to do any work for helping a developer getting H1 VISA."

    Ever since 9/11, that is a very risky and very often non-economic way of trying to fill the void. And it does nothing to help in the long-run, since H1-B visas are temporary.

    I've known several cases where a project became dependent on H-1B's only to suddenly be without them at a critical juncture, because they could not get back into the United States after visiting their home. It often takes weeks to sort out this stuff and often the project manager has no idea where the H-1B even is. In fact, I know of at least one case where the H-1B holder was NEVER allowed back into the United States. He was prohibited entry for 7 years.

    ReplyDelete
    Replies
    1. Surely this person did something wrong in the USA. People hired to manage the H1B people should be responsible and take conscience of the company's investment in you as a professional. Deserving of H1B must be correct, hardworking and above all responsible people.

      Delete