|
I am currently doing the exact same thing. Started to employ freelancers and half-time people to do the things I do. Thought I could handle the stress and just figure things out while I go. Well I could not. Revenue went up but profit went down. Was still a good experience, because it showed me, that it can be done and what I have to do to make it work. So I took a step back and I am now documenting. Every. Single. Thing. You cannot imagine how people find ways to do stuff differently than a sane person/you would do it. Might sound like a small thing, but the final drop for me was, when I asked for the results as a zip archive and got a .7z file starting with two dashes (--for myname.7z). I decided, my time is not well spent when I have to look up how to handle files like that in bash. How can you even possibly come up with something like that? The guy must have been very talented at QA, because he clearly knew how to produce edge cases. Another thing I do not want to do a single time again is setting up environments. Even if you use something like Vagrant, this is such a huge pain in the ass, because even these technologies do not just work. Yeah, they work the same on the same version of OS X or Ubuntu, but the real fun begins, when helping over the internet to set it up on an OS you are not on yourself. I will not do this again. I am not sure on how to solve this yet, I am currently leaning to just defining the environment and just require it, require them to work over SSH or literally send a laptop out. This is so much pain. "That's it"-story here was a guy on a test project, who did not manage to set up Ioncube Loader, because he had the wrong PHP version and literally manipulated a screenshot of phpinfo(). I did not know whether I wanted to laugh or cry. So now I document all the things. I have a huge collection of linters and checkers bookmarked. I write style guides for every product, with even the smallest things defined ("how to name a file"). For every task there should be a checklist. Enterprises call these "standard operating procedures". I have a flow chart on how to spend my own time, starting with "Is there a new email in the inbox?" all the way down to questions that handle bankruptcy. What I do not have yet is a really good way to make these documents accessible. There are SaaSs out there (process.st, sweetprocess.com), but for me these did not cover all the cases. I used Google Forms a bit, but ultimately I want a nice platform to handle everything together so user authentication etc. is unified. My current plan is to just use Gravity Forms and WP Knowledgebase. I think ultimately I will end up with something custom done, but until then done is better than perfect. What many people here already recommended and I cannot stress enough is this: You do not want employees. The huge benefit of software or consultants over employees are obviously no running costs and the ability to just require perfect results. Request what you want, attach your style guides and SOPs to the contract/code, deadline, contractual penalty and done. So first write your processes down, after that: standard software > custom software > freelancers > employees. Also what other people already have said: Start from the bottom. You do not want sales automated, first you just do not want obvious false positives inside the inbox either trough automated filters or through a person with a process to specify if you actually do what is requested in the email. Now you are left with actually relevant emails, what would be the next step? Huge benefit of this is obviously, that you can use cheap workers. Now write a process on how to find them. Then write a process on how to write that process. At the end, hire a COO to execute the top level process. Ideally he or she should now not be running your company, but creating companies similar to yours. Of course, this probably will not happen, there will always be fires to extinguish. Regarding your specific questions around access management etc.: You typically want to find out how enterprises do these things or what the industry standard is and then go from there. So for example you would write down a process on how to set up a server, now look what tools are used to automate this. The answer is Chef or Puppet. Are there simpler/easier tools suited for smaller companies? Yes, Ansible. Bingo, rewrite the process as an Ansible script/buy one, you have now automated the process. With access management, the keywords are key-based authentication, LDAP, a contract of what evil will come on these who abuse their trust, a process to onboard, a process to fire (where do I need to restrict access?). |
You can't hire hire someone and expect them to do the job unless they have a well written spec and there's extensive documentation on setting up a dev environment, deploy process, etc.