I am interested in developing a rules engine to help automate and create some of my everyday business and product functions.
I'm not a developer by trade, so I have been looking to connect with someone to hire for the project. Unfortunately, because of my lack of understanding about the rules engine space, haven't had any luck finding where to locate developers who would be specific to this type of project. I've tried using the keywords 'rules engine' on Odesk and Elance as well as Google, but I haven't found a good source of information for the type of developers that would be well-suited for my project.
Here are my questions:
What would someone who specializes in developing rules engine call themselves? i.e. do they like to be called developers, programmers, something different?
If I were to search sites like Odesk or Elance, what type of keywords would target developers who specialize in rules engine development?
Where do they hang out? Forums, communities, open source projects?
If I want to hire someone who is very talented, what type of experience/languages/credentials should I be looking for?
Here is what I am looking to develop, if it helps answer the question:
I am a running coach and I want to use a rules engine to help build dynamic training plans. So, a user would input certain variables (days they can run, their current mileage, upcoming race dates, etc.) and based on formulas and rules I've created, the program would produce a training plan. If I can be more specific or detailed, let me know.
Thank you in advance for the help. As you can tell, I am noob, but I am willing to do the work to find the right person, I just need to know where to start.
It looks like all of the other answers are saying basically, just to hire a good developer. And I think that is a fair point. It sounds like what you are wanting to accomplish could really be done just by a software engineer/software developer. But, it is worth pointing out that there really is a such thing as a rules engine and there really are people who specialize in working with them. Drools is one of them, CLIPS is another.
I can't say you really need all of that overhead, but if you do, you'll want to look for people who are experts in things like that. Yes, they'll probably call themselves software developers, but if they're an expert in rules engines, they'll list Drools/CLIPS/whatever as an area they are an expert in. Like I said to start, though, there's a good bet that you don't actually need a formal rules engine, just a good software developer. Find a good one, and they'll find the best way to make your vision a reality.
Jeff,
Someone who specializes in developing rules engines? -- That would be a programmer, and if they are any good they would specialize in the general area of 'technical','logical', or 'mathmatic' programs, so a software engineer would be the best title.
Keywords for sites like Odesk or Elance? -- These sites are supported by people who 'front' for programmers who are willing to work for bottom dollar -- Sound like your kind of people?
Where do they hang out? -- forums are a good bet (but mostly they are talking about some 'tecky' subject rather than do-able project, communities --same as forums --open source projects -- yes, but those are for non-profit.
Finally, you ask what type of experience/languages/credentials to look for -- yes on similar experience, no on languages (how will you evaluate their competency), no on credentials (very hard to verify or determine relevance).
Good news? -- I am a retired senior software engineer and I am willing to help you develop a complete, programmer-level specification (no charge on Wednesdays,lol). With that in hand, you can provide a link on sites such as this and ask potential candidates to explain how they would fulfill it. Good luck
I'm one of those kinds of people, Sr. programmer is my preferred title, but I wouldn't frequent any of the sites you mentioned so I am guessing that it will be a bit tough to find a good spot where programmers and developers might normally congregate.
But, for a bit of good news, I know for a fact that this site: founder2be.com , specializes in linking talent with business people. I realize that this might not be a start up type of venture, more of a paid gig but you can search for developers and see who might be interested in your stuff.
Good luck,
Tim - VA
Jeff, I felt one important thing is missing from your requirements - Who are the users of that program? This is important to know how that programs should be designed, It can be as a web application (if you want your students to access it too through internet) or just a desktop application (only for yourself sitting on your laptop/desktop).
Another important design factor to consider is how to incorporate the change in rules.
Well, I guess most of your requirements can be satisfied by simple IF-Else statements and setting up a small database if needed and no need to go with the complex rule engines in the market. All you need is an experienced ( or inexperienced but intelligent and logical) programmer to do this job. I guess you have already visited correct places to find the correct guy but haven't explained the requirements to him.
First, Prepare some docs/presentations to explain what you want - this should include everything - from how it looks to how it should function. Then you can take these and ANY programmer/software developer who can understand this is good to go with.
I am a Programmer/web application developer. This is what you are looking for. Technically you are looking to write a small web application. I would recomend looking on Elance.com.
Jeff what you call Rules Engine is just another "application" to any programmer.
I've had good success with oDesk and finding developers who can take your vision and make it into a piece of software/ web site / app ... whatever.
The biggest hurdle is always transferring the idea.
I would recommend you design (on paper or powerpoint or anything) how the screens of the application will work. Show what input people need to give, show what output they will see, how will it work.
This, for me, has been the most effective way of getting my idea across, and have it working like I planned.
This document/ powerpoint is commonly called the "functional spec" ... ie it shows what the application needs to do. This is the bed rock and everything will stem from this. Spend as much time as you can thinking about how it will work .. what needs to be included. Get it right on paper.. and the development is a real breeze. (Developers usually go and build a "technical spec" from the functional one).
Have a chat with programmers, don't go just on price... a $25 an hour programmer could be 3 times as fast as a $15 an hour guy/ gal... so experience counts... but more importantly find someone whom you can communicate with.
Hope this helps