This role is atypical for a contract, and is hidden behind an NDA. I performed, as a two line summary:
- As team-lead co-ordinated geo-diverse development team. Acted as product vision in places.
- Created/ added standard technology to improve services, towards standard outcomes. This is not a tech centric company. I delivered alot of targets.
In more detail:
- Co-ordinating an international tech team, with people in three countries.
- Managed/ lead extra remote-contractors, in several further countries. This requires managing best communication times for separate working hours.
- Increased stakeholder awareness and requested advise on product user-flow.
- Establishing standard agency work flow, with CI and concurrent git branches, moving towards weekly sprints.
- Added user-stories to improve communication and values. Built culture of ROWE development, as I was hired after expected release date.
- Emphasised DDD to improve communication with non-technical directors. Liaised directly with directors, as this is a small startup.
- Rebuilt the actual servers and architecture, simultaneously reducing costs and increasing performance and stability. Managed these cloud boxes.
- Managed compilation/ deployment of iphone apps.
- Added all the SEO/ web semantics features, which for pre-commercial milestones where omitted. Added marketing related data-features.
- Created and managed CORS headers. Created some pure frontend postMessage() based communication, for other features.
- Created a REST API for better programmatic interaction.
- Improved OO and DB interaction for better stability. My new code follows more recent PHP language features.
- For the code that I wrote, I followed standard engineering practice ~ TDD ~ as this enables complex requirements to have timescales.
- The platform visibly has strong search features. I wrote the second generation on these, replacing all previous editions. Particularly I improved performance (about 1000%), as this had been left till the end. Secondly focussed on usefulness and user stories, so the search was relevant to consumers. GIS is also part of the search, this is purely my work.
- Although I did improve the search, I also moved the company's perception of search from a database resultset to a shortlist of viable options. I moved the search filters to ones more useful to users, and tried to avoid attention on price sorting (as its nonsense stats). A particular meal and drinks has a defined price, but this isn't the “average price” across the venue, unless you intend to order the same meal from every venue (regardless of cuisine).
- At time of writing (Jan 2016), I am trying to get time to implement the third generation of search, which will be faster and more of the above ideas.
- Analysed and implemented a long list of UX improvements, to reduce data entry requirements for users. This is an application, not a set of webforms. In total this reduced human inputs by about 20% without any loss of features. Changed UX widgets to ones that require less clicks. For example there should be no need to set a [long,lat] manually, when the platform has the physical address.
- Did alot of “idiot testing” and found missing feedback or interactions, to make things simple from the users perspective.
- Entirely defined task definition to being defined as user stories, to reduce rate of missing interactions.
- As milestones have been achieved; I am reversing the previous ROWE work style to make code easier to manage.
- Due to extending requirements I created a multi-level user authentication system.
- Did about several months of “no new features” quality refinement. This lead to better UX and improved client side performance.
- Wrote some business features in Node. The most complex code that I have written recently computes available booking slots, and characteristics of them, is in Node.
- Performed code audits to improve non-functional things like API authentication (I note biggest outcomes on code that I hadn't written).
- Am planning on moving to Symfony for better features and performance.
- Worked on bid on TechStar? accelerator funding, in the “food / hospitality tech” category. At present, mid-Sept this is in the incubation period the competition Some Notes.
- I stopped working fulltime for venue10 in July, as most of the work was done (for example I got paid to write/ publish API documentation in July). On the 2nd August, I started to work for Hoptroff London. I have been retained for small number of hours since then to perform maintainance operations.
For the first three months, my job title was “lead developer”, I am now “lead engineer”. This role has the least software engineering work of any that that I have held, due to other responsibilities.
To further the confusion, the company rebranded to dinestream.com in late 2016.