

Ask HN: Help me bring more value to the table - mxmpawn

Last week I had an interview with a healthcare software business owner, he told me that their application is built almost entirely with php
and without any frameworks and most of the business logic is in the MySQL stored procedures. The system works ok, but the problem is
that the code is hard to mantain, modify and to get developers to work on it. He is looking for a person who can solve this problems,
refactoring or porting it to another more &quot;developer friendly&quot; ecosystem.<p>I&#x27;m a programmer with most of my experience related to web technologies(Python&#x2F;Django) but recently using machine learning algorithms in personal projects. This guy offered me(by email) a salary of $X after the interview, but being not ok with the offer I wrote him that
the value I considered could bring to the business wasn&#x27;t matching his offer. He replied that he was interested in having another meeting to 
discuss it.<p>So before the meeting I reach you fellow HNers for some help. I was thinking about which things, besides code refactoring, could be offered in order to increase the expected value. Some things I thought about:<p>- About the refactoring: Create a well documented Rest API to improve maintanability, reduce code repetition, use the most suitable programming
language. The creation of an API will also allow to add new functionality in a cleaner way, so it could be possible to build, for example, a mobile app for appointments allocation.<p>- Use ML to predict something of value. I&#x27;m not experienced in the healthcare domain but I think there are a lot of possibilities(do you know any?). Maybe use ML to predict the amount of patients to attend in a given day.<p>- The company site is old, my idea is to build a new one, start a blog talking about related topics and then open source non-core apps that could be useful for other people.
======
bbcbasic
You are in a strong position as you have the offer.

How well you do will depend on their budget, politics, attitude as much as how
good you are.

I would suggest framing everything in terms of business benefit and the
benefit to the person making the decision. Pretend you are them and imagine
what they are looking for.

The refactoring stuff looks good. So you could frame that as "You are getting
a lot of bugs reported every day, which must be frustrating. I bet you'd
rather be making progress the more important things in your job. I will fix
those bugs quickly. I can deal directly with the support department if
required. At the same time I will work to make the codebase better to reduce
the bugs in the future by at least an order of magnitude. I will do this by
..."

Now this guy will personally want to fight to get you in at the higher salary
because you are going to make his life easier.

Another way to look at this is how the employer thinks about roles. If you can
sell yourself as a senior developer or architect or team leader rather than
just a developer, then show comparable market rates, this will help.

But you need to figure out what is making them tick.

------
johnmark1845
Before the meeting, give some thought on how your potential employer (in this
case healthcare software business owner) would perceive Cost Benefit Analysis
when he hires you. He is not just looking to solve problems with the code and
to port it to another more developer friendly ecosystem (although this sure
will help in the long run), but what benefit / overall value he gets. You sure
gotta add more value to the table. Try to analyze how much can he sustain /
afford (in terms of time) to port the code to another developer friendly
ecosystem. Or is his main priority is to add more features to the software
product (If this is the case)? Because porting the code to another framework /
language is more of an expense, while on the other hand adding more features /
enhancing his product is more sort of a value addition. So, give some thoughts
on this, try to figure out his main priorities and discuss with him in meeting
discuss how you can bring more value to the business.

~~~
mxmpawn
Thanks for your opinion. I was thinking about giving all modules a priority
based on alternative income sources the module could provide(the app for
appointments for example) and also considering how relevant is the module in
the system.

This way I could change the "refactor this system in 1 year and then we might
see the benefits" to "pick several modules, refactor them and add some
features/apps taking advantage of it".

------
logn
Point of discussion for your meeting: fixing this problem now is more cost
effective than letting the app rot while his user base grows (compounding the
problem). One way to ensure a quality refactoring is to do a couple tasks (ML
and redesign) which both demonstrate power of the new architecture and also
let you and he verify it. You could also sell some integration tests and site
monitoring.

