0

You can skip straight to the Conclusion if you don't wish to read the Background and Problem Details

Note: I do work remotely, which does present it's own challenges for communication.


Quick Background:

I work for a small company (<10 people) that has some misc in-house FileMaker projects that have been hanging around for a decade or so. Most of what they have or do relies on technology choices and practices frozen in the mid to late 2000's (which by itself isn't a terrible thing). I do work with clients to create, fix, or change their C# or asp.net applications. I came from a place where I was able to find and solve organizational-level problems with tools and software that I and my team would create, with almost complete creative and architectural control. Which has led to "sales based development" being a fairly dull and demotivating existence. I really don't get to flex my development knowledge or do much satisfying work.

My boss (CEO) (Lets call him Fred) has expressed great interest in having me use my expertise to built out an REST API to ingest social media data and analytics, and to sell access to that data. I have also expressed interest in this, specifically mentioning that I need a project with creative control so I can do what I do best and have some job satisfaction. Fred has excitedly agreed that this is something we should do.

About Fred:

In my time working here, I have known Fred to be very obstinate in sticking and using tools and frameworks he is familiar with. Even if they are very old, and cost a lot of time. To the point that Fred believes that a favorite tool can do anything, even if it's practical limits are very clear. This includes sticking to old assumptions and ideas about how to handle user data, security, and how and where to store and manage your code (ie. no source control, no HTTPS certs, no email validation, user credentials are in plaintext, admin accounts with passwords of 123, we only need FTP for everything...etc)

Problem Details

Over the last week Fred has had me using FileMaker, which has been a rough and frustrating experience to say the least. I have a tough time using such tools as it takes almost all the development control away, and is missing countless "features" that could be simply implemented with almost any web framework and and RDBMS. I've mentioned that this tool is great at some things, but poor at others, but Fred believes you can make anything with FileMaker, no matter the complexity or scope.

I confessed that I don't know why we are going through these FileMaker exercises, and it turns out that Fred is already dead-set on having me create the entire web API, data processing, and data ingestion in FileMaker. Which, to me as a full-stack dev, sounds like a terrible idea. There are numerous requirements for such a system that FileMaker cannot provide for, and it as a RDBMS is not up to the task of handling tables with potentially billions of rows. Not to mention that creating and managing a REST API is not something the tool even supports.

I have expressed these concerns, but the response I get is that "FileMaker can do that".


Conclusion

CEO wants me to make him a REST API to ingest mass amounts of social media data, and provide ways for paying customers to utilize this API for their own needs. This is a fairly complex, multi-faceted, and large project. And is something I have been biting at the bit to do. However, he insists that I make it with FileMaker, despite my expertise being in full-stack development of many flavors. My proposed solution is to use Asp.Net Core and a RDBMS like MS-SQL, MySQL/MariaDB, or PostgresSQL. As These are tools I can rapidly develop in, and others in the office know C# including the CEO. I'm comfortable using almost any other major language and web framework to get the job done. Just not FileMaker.

I am especially concerned that I have had no input into the decision making process (feasibility, technology choices, or requirements). When I will be the one creating this application.

Questions

  • How do I get in on the decision making process that Fred seems to be doing solo?
    • I there any professional way to clue him in that he is making decisions on incomplete or outdated knowledge and assumptions?
  • What can I do to convince him that this is likely going to hamstring the project? Both from a technological standpoint, and a developer motivation standpoint.
  • How do I effectively communicate that this tool will not provide the features or flexibility I need to make this project happen?
  • How do I professionally and politely communicate that I have no interest in investing myself into FileMaker? As it's not a skill I find useful in my personal projects or is a skill that will be transferable to other jobs/companies that I am interested in.

I don't believe I'm going to do good work here either. As my motivation and drive for the project has all but evaporated under the current circumstances.

  • 1
    Downvoter, care to explain? – Douglas Gaskell Jan 18 at 5:38
  • Wow! Is FileMaker still around? I doubt that he would get many people with good FM knowledge if you win the lottery. – Mawg Jan 18 at 7:58
  • 1
    Why do you work there? I don't see any reason to stay, so I must be missing something. Were I working for someone like that, I'd find another job. – David Thornley Jan 18 at 18:21
  • 1
    @DavidThornley Because it's a hassle to move jobs, and if I've learned anything it's that the grass is rarely greener on the other side. And I'm working on my own personal product that the flexible schedule here facilitates. Though it has crossed my mind that I might want to start looking else wear, I browse and apply periodically. – Douglas Gaskell Jan 18 at 18:40
  • Thanks for making clear that "boss" = CEO, so convincing the bosses boss is no option. – gnasher729 Jan 18 at 23:27
4

Note: I don't know FileMaker, but I'll assume that your assertions are all correct.

If you want them to consider alternatives, it's all about how you present it.

  • FileMaker may be able to do it, but will it do it well? Is it going to create a market-competitive application with an acceptable performance for 2019?
  • Is there an alternative option with which you can do the same work in significantly less time?
  • If your office allows for research or you want to do it in your spare time, maybe create simple demo on performance benchmarks for tables with millions/billions of rows and prove to your boss that FileMaker buckles under high loads.
  • Are there any concerns regarding maintainability of the application at a later stage?

I've personally found that the "simple demo" approach tends to work well in cases like this. I tend to run some tests, and convert the results in tangible metrics for non-technical managers (mostly time or money, depending on the topic). The goal here is to highlight the differences between the chosen and preferred approach, and make the differences easily digestable.

For example, I was faced with a manager who wanted to avoid refactoring like the plague. One issue consisted of sending an unnecessary 5Kb of data on every page load. So I did the math. I tracked page loads over two weeks' time, multiplied that by 26 (to get to a year), multiplied that by 15kb, and multiplied that by the cost of bandwidth (this was an Azure application). That would be a cost per year. The cost of refactoring the issue, even for my (relatively expensive) contractor wage, was <20% of the yearly bandwidth cost.
And this application would be hosted for at least 10 years. Seeing the price differences immediately convinced my manager to listen to the suggestion I was making. Did I technically do his work for him? Sure. But he is now doing similar cost analyses by himself, which he wasn't doing before. I just helped him on the way.

Though I can't say that this is definitely the case, sticking with older technologies often comes from a fear on the newer unknowns. By creating a digestable information summary of the differences, you lower the threshold on moving away from FileMaker.

In the end, it's your boss' choice, and you can't change that. If they decide that FileMaker shall be used, then FileMaker shall be used. All you can do is work on the project in the way you were instructed to work on it. Or quit.


However, if significant problems arise that you can't easily work around, talk to your boss. He definitively decided to use FileMaker, so he may know ways to fix this. To quote Uncle Ben:

With great power comes great responsibility

If your boss forces a particular decision, then they inherently take responsibility for the consequences of that decision they made. Bad bosses will avoid the consequences of their decisions and push the problems onto someone else, but a good boss will actually help tackle any problems that arise from the decision they forced.

Even if he is unable or unwilling to help, you're highlighting hard to solve issues with FileMaker that maybe wouldn't occur with other libraries or tools, which may sway his opinion for the next project.

  • Thank you Flatler. I appreciate the effort you put into this. I agree that a demo approach may work well. This individual is very technically capable, and at one point was a develop themselves (He teaches at a university even, on software design of all things). A well thought-out, and easily readable summary of changes will probably work well alongside some examples and metrics. I will definitely be keeping this in mind when I plan my approach. – Douglas Gaskell Jan 18 at 8:10
1

You say you will do the project, but not in FileMaker.

But before you start the discussion, prepare yourself. Make sure you can explain why doing this in FileMaker is a really bad idea. Stress the point that you were hired for your expertise. You are the expert.

And while you are at it, eliminate the horrible security related practices you mentioned.

Of course, this may strain your relation with the CEO, and depending on your local laws, get you fired. But if that happens, you shouldn't want to work there anyway.

0

I really don't get to flex my development knowledge or do much satisfying work.

In my time working here, I have known Fred to be very obstinate in sticking and using tools and frameworks he is familiar with.

I don't believe I'm going to do good work here either. As my motivation and drive for the project has all but evaporated under the current circumstances.

CEO wants you to use FileMaker for an application for which it wasn't designed. You don't want to.

You have already attempted to convince the CEO that it doesn't make any sense to use FileMaker, using reasonable arguments. Yet the CEO says only "FileMaker can do that". As you wrote, he remains "obstinate in sticking and using tools and frameworks he is familiar with."

You thus have decided, according to your own words, that you won't do good work, are not motivated, and have no drive.

If all of that is true, it appears that it's time to find a new job; one that won't require you to use FileMaker this way, I guess.

  • Of course things are more nuanced than than you are trying to boil it down to. I do good work, am motivated, and have an over-abundance of drive. Just not for this specific item, and I know that being unmotivated as a developer often leads to poor work. That's the reality of things. Instead of throwing in the towel I am trying to work through this and am looking for advice, and provided as much context as I could without being too verbose. I don't believe that find a new job when things get dicey is a healthy attitude to carry around. – Douglas Gaskell Jan 18 at 4:02
  • @DouglasGaskell There are times when you have to use that route. I've personally done a lot with FileMaker. It's a fantastic little platform, but when you hit its ceiling, you hit it hard and it isn't budging. The scope the poster outlined clearly exceeds FileMaker's capabilities. I wouldn't want my name attached so something someone tried to crowbar/MacGuyver into it like this project. – Wesley Long Jan 18 at 6:23
  • @WesleyLong Thanks. I do agree that there always comes a point where that is the route to take. However, I think there is still some methods that I could use to influence this person. I am hoping to gain some insight from others who have been in similar situations, so I can know how to move forward while staying at this company. – Douglas Gaskell Jan 18 at 6:54
  • 1
    I think this answer oversimplifies the situation. While there is a place for following a direct order; there is also a place for meaningful and respectful discourse. OP is attempting the latter and your answer implicitly suggests that the former is the only option. You are effectively arguing that no employee should ever make a meaningful suggestion and should instead just quit. – Flater Jan 18 at 7:55
  • Also, OP's intention to sway the manager is not a sign of no drive or no motivation. It is quite the opposite, OP is driven to improve the work. Unmotivated workers tend to stop rocking the boat or questioning things, and just drudge on with their day. – Flater Jan 18 at 8:03
0

You need to ask your boss why he chose file-maker over all the other technologies you suggested. You're clearly not understanding something very important.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.