Developing a rules engine


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.


asked Jan 4 '12 at 04:15
154 points
  • I worked in enterprise automation software for many years- it's a deep space with tons of products, product certifications, consultants, and analysts. It's not clear to me what kinds of functions you're trying to automate, or whether you're trying to automate them using an existing product with a consultant's help, or develop a homegrown rules engine. Can you provide more detail about what you're trying to do? How large is your company? – Rsg 12 years ago

6 Answers


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.

answered Feb 7 '12 at 08:58
3,465 points


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

answered Jan 10 '12 at 04:13
Jack Mullaney
1 point
  • Thanks, Jack. Just to clarify, I mentioned open source forums because I think it's a great way to (a) see their passion for the space and (b) evaluate their work if I had a consultant help me look at it with me. Thanks for the advice on the program-level specification and for posting to potential candidates. I will keep this thread updated. I really appreciate your time – Jeff 12 years ago


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: , 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

answered Jan 4 '12 at 05:41
670 points
  • Thanks, Tim. What kind of sites do you visit where I might be able to connect with potential free lancers? Also, what type of skills/experience/languages would I be looking for - i.e. SQL, Ruby? Thanks! – Jeff 12 years ago
  • I really do not know of any other sites to visit. Now I have heard good things about and as well. You might also try: I have not used them but the platform looks interesting. As for the Tech, with the data you have shared so far I would want to keep this as free from license and as versatile as possible since you will be pulling back data constantly so maybe MySQL for the database and PHP for the front end. Just my opinion, good Luck – Tim 12 years ago


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.

answered Mar 23 '12 at 06:59
Saurabh Patil
16 points


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

answered Jan 5 '12 at 08:20
Timothy Martens
101 points


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

answered Jan 5 '12 at 10:53
1,072 points
  • Thanks, Sunil. This is a great ideas and I have begun work on a functional spec of sorts. I will keep this thread updated so you can check it out and I hope it will better demonstrate why I was thinking a rules engine would be the best way classify this project. Thanks for taking the time to answer my question. – Jeff 12 years ago

Your Answer

  • Bold
  • Italic
  • • Bullets
  • 1. Numbers
  • Quote
Not the answer you're looking for? Ask your own question or browse other questions in these topics: