Software Development
I was developing software since 1980, and have managed software development projects of significant size and complexity.
At this point I no longer do software development unless
there is a community or sustainability angle to it, in other cases
I would prefer to refer you to the Outsourcing team I worked with
in India, email mitra@mitra
Project Management: I am used to managing all the complexities needed to organize a project, break it down into its parts, delegate and track it. In particular I can add particular skills with working with distributed teams, and with managing changing requirements.
Complex Internet Systems: Many people can build web sites, fewer can build complex systems involving multiple new technologies, servers, hosting, firewalls, content management systems, custom software development etc. Then do this on tight budgets, handling exponentially growing numbers of users. Of course the biggest challenge is creating systems that are only as complex as they need to be!
Technical / Business Interface: Most of my career I've worked across the gap between technology and business, helping interpret the language of one to the other. In several jobs I have been the only person who sat on the management team, and worked with the engineers, and the clients. Having been a programmer I can talk to the programmers in their language, can look over their code, build usable specifications etc; Having run a company, I can talk to the business people, or the clients about requirements, and deadlines, and budgets, and funding.
Software Architecture: On a typical project, I work with the client or business development team to turn the concept into detailed functional specifications (for the business people) and technical specifications (for the programmers). Typically I then manage a team of programmers to develop it. This involves an ongoing process of refining the specification in response to changing requirements and lessons learned in early development.
Technologies: For simpler web-based projects I use APC-AA, a content management system with particular focus on the non-profit sector. For more complex sites PHP or Javascript is used. Most of the larger new-technology projects use Java, which is more flexible but correspondingly more expensive to work with..
Offshore Development: To keep development costs down, I've developed considerable experience of outsourcing. I managed a distributed San Francisco-Moscow team for Paragraph International, and developed a team in India for Flycode, utilizing that same team for a number of projects since. Working offshore often brings considerable benefits to a project including flexible staffing, and considerably lower costs.
Standards: Internet Standards are set by a process involving co-operating with competitors in a variety of committees to generate standards which everyone can agree to implement. The process can be long and evolved and is as much political as it is technical. But the results can be rewarding, a standard that is close to a company's existing technology gives them a head start over the competition and in contrast a standard that is distant from the technology can cost a lot in re-implementation and may not incorporate the features that differentiate their product. For example I was co-author of VRML, and a contributor to the HTTP and URL standards. more....
Limitations ...
Software development is no longer the core of my business, however the skills learned are available where there is either a software development component in a sustainability or community project, or for smaller projects for previous clients or clients close to Byron Bay.
Examples
Many more examples are listed in Projects and Clients, but a couple of highlights ....
FlyCode 2000-2001
Chief Technology Officer for Flycode - a Peer to Peer video and image sharing service, with built in DRM.
- Developed and managed an engineering team in India, for the startup in San Francisco, while based in Australia.
- Architected the system and wrote the specifications.
- Supported the developers, negotiated with technology partners, supported business development team with key customers, and acted as part of the core management team.
- Custom Windows Client, and IE client with Java plugins talking to custom Java servers running load-balanced on Linux and talking to MySQL (and later IBM's DB2) database servers
America Online
From Sept 93, through early 94, I designed and developed AOL's first gateway to the internet - which at the time meant Gopher and WAIS. Designed for the average AOL user, it had to make the hostile internet look friendly and reliable. This included:
- Building what was, at the time, the biggest cache on the internet - with a 75% hit-rate.
- Building a classification system - similar to Yahoo, with Editor's choices and the rest of the net.
- Handling about 10% of AOL's then user-base.
- Educating AOL of the importance of the internet.


