Tech startups · Technical Architecture

Microsoft.net as language for HR Management SaaS

Libby Kennedy Chief Operating Officer - Selterre Corporation

February 27th, 2017

We are creating an HR management SaaS product. The goal is to "not be Oracle" in the sense of creating a product with fresh eyes/approach that is not hindered by decades of entrenchment in revisions to systems built in the '90's. In short, to be the system that employers in our industry would create if they had a blank slate to fix the current inefficiencies.


We are fairly early in development, and have been working with off-shore developers to complete front end development. We are actively looking for our key tech co-founder (on another note!), however in the interest of time we are moving ahead with development and retaining tech advice on an "as needed" basis for DB architecture etc.


Question: Our off-shore developers have suggested building the backend in microsoft.net on an Azure server. Thoughts?


Goals to keep in mind:

1) Our desire to not create the same bureaucratic systems that currently dominate the market (I have heard that .net caters to this crowd), and

2) As we do not have the key tech person in place on our team, we would like a language/approach that keeps our options open for tech co-founders who are excellent in the language we chose. In short: will .net limit our options of who we can bring on board from a tech perspective?


Thanks very much and I appreciate any feedback from the forum.


Kind regards,


Libby

Chad Thomas

Last updated on February 27th, 2017

Libby,


Trying to make architectural decisions early on in your are always difficult. I would not worry so much as to specific technologies if you don't have a product up and running at the moment. You should condition yourselves to pivoting quickly and early until you have a proven model that can generate revenue. Bringing in your tech co-founder is a critical first step in a long road of building your business. My opinion after many years of working on the Microsoft platform is to use a toolset that can be easily swapped out if it is not doing what you are asking of it. I am a fan of abstracting your development platform into layers. Front end, API, messaging, micro-service and database. If done properly each one of these layers can be swapped out for different technology depending on resources. Front ends can be written in React or Angular with Nginx or Node servers, to name just a few. API can be written in any number of systems like Microsoft webapi/IIS, Python/Tornado, Javascript/Node, just to name a few. Your messaging platform can be easily swapped in and out using NSQ or RabbitMQ. Micro services can be written in almost any language out there that make sense for your regional tech ability or preference. And finally we get to your question on the database. A few questions should be asked before you jump in and make a decision on a DB. Multi tenant vs single tenancy. OLTP vs document storage, how does your app need to access its data and how should it be organized? There are a ton of questions that should be asked before you make any decisions, I prefer to get opinions from a tech founder with a breadth of experience rather than depth, this will offer you wisdom and keep your costly pivots low until you get to a revenue model that supports the business. Look at http://theleanstartup.com/principles and apply those to your decisions on technology. Azure is easy to get embedded into and very difficult to disengage once your platform has development sprawl. I would recommend using docker initially to standardize the development on your dev teams workstations and keep everything minimal in the cloud until you have an MVP. Once your product has manifested and has a path then move to the cloud.

Mark Rome CFO, Director of Finance, Controller, Manufacturing, Aerospace & Defense, Construction, Logistics, Software & SaaS

February 27th, 2017

Libby, this may be off subject, but have you thought about building a virtual employee record as a feature into your proposed HR management SaaS product?


In a prior role as CFO for a tech company, about two (2) in three (3) employees that terminated voluntarily had a tenure of less than two (2) years. With a 15% turnover, that translated to a loss of profit of more than 20% due to indirect cost recovery.


As a prolific user of ERP & HRIS, we see tremendous value having access to a potential hire’s historical HR records, including: training & certifications; job titles; roles & responsibilities; salary history (rate increases, commissions & bonuses); past projects; awards & achievements; promotions; supervisor & subordinate references; team member references; work environment; and, perhaps even performance evaluations.


With access to their virtual HR data, job applications could submit their HR records to our recruiters (internal & external) in place of their resume when applying for open positions.


With access to virtual HR data for recruiting, our recruiters could engage in talent hacking using culture fit analytics to build talent pools with our ideal candidates; automate & streamline the recruiting process; improve retention and reduce turnover; reduce hiring and training costs; and eliminate manual data entry and duplication into our HRIS.

Wawan

Last updated on March 2nd, 2017

The platform you choose will not determine what you want to do. For each technology you have advantages & drawbacks but you can always fix or bypass them. So do not worry about 1).


The advantage of Azure is that you can scale without problem. No matter how many connection you have per day, it will works. That's something you can not have at your level if you have your own servers.


Do you what language it is ?

.Net is a set of proprietary technologies created by Microsoft. The most common is the C# language. If that's the case, it's a pretty popular one.


For the 2), sure it will limit your options. Not everyone knows or likes .Net. But I will tell you to go anyways because you can always change it afterwards. First create the product, you will see what's next after.


If your next CTO really likes the project and can change the technical part, he/she will still come.


ravi verma building a sport enabler startup

March 3rd, 2017

Libby,

Since you at early stage of development and off-shored most of it (may be logical part with you and technical part with off shore vendor), and the vendor is suggesting you going with .NET purely because they might be having good hands on resources on it. Which is all fine at initial stages as it helps you with getting the product ready fast and test it in the market fast and incorporating the feed backs fast.


Apart from .NET you can go with JAVA based stack or scripting languages based stack like php , python based (LAMP/WAMP) or ruby on rails or JS based - Angular and many more.


Each stack has it own pro and cons based on what the current requirement are.

ex: development speed, new developer bootstrapping, open source availability, scale etc etc...


But at initial stage the most IMP thing is choosing the language(framework) on which your team is comfortable with.

Later based on time, resources, and funds the language parts can be changed anytime (once/incrementally).

Many have done it ex: facebook from initial php to custom php to c/java and current new technologies.




Mitchel Lewis Ambitious Engineer with all sorts of plans.

May 3rd, 2017

'The goal is to "not be Oracle" in the sense of creating a product with fresh eyes/approach that is not hindered by decades of entrenchment in revisions to systems built in the '90's.'

+

'1) Our desire to not create the same bureaucratic systems that currently dominate the market (I have heard that .net caters to this crowd), and'

=

Why are you settling on Microsoft solutions? This is their MO.

MaxBlox/Founder Institute Director, Chennai Area at The Founder Institute

February 27th, 2017

Libby, we use .Net for a complete PaaS platform which is open source. We have built sales commission and employee recognition applications on top of it. I would love to chat with you about it. I connected in Linkedin.

Libby Kennedy Chief Operating Officer - Selterre Corporation

February 27th, 2017

Thanks very much @MaxBlox/Founder Institute. I really appreciate your input Gopi, it was very kind of you to take my call and discuss details specific to my platform. I look forward to keeping in touch, and if you know of anyone who would like to take a look at the project as a tech co-founder I would love to talk to them.

MaxBlox/Founder Institute Director, Chennai Area at The Founder Institute

February 27th, 2017

@mark Very interesting Idea! One caution. I was involved in one venture where much of the time was spent in the issue of anti-trust regarding using salary information in the aggregate. Government had set rules that it gives an unfair advantage to companies in the marketplace because they can collude on pay. I remember health care firms in the Northwest being penalized for that.


MaxBlox/Founder Institute Director, Chennai Area at The Founder Institute

February 27th, 2017

@libby You are welcome! I am happy to continue answering questions you may have. I do a lot of that for startups via Founder Institute. There should be a chapter in your town and they are awesome.

Chris Whitson

March 2nd, 2017

That depends on WHY they told you build the back end in .net. If they are doing it to position themselves for more work in the future...buyer beware. But if they give you concrete, valid reasons why they suggested it, then you can have a tech-oriented person familiar with your project to validate such claims. As with all aspects of a startup...the why is much more important than the what.