CTO / Principal Developer –
Swapasap is a project still under development designed to facilitate language learning for
students by allowing students to locate and communicate with other people who can help them
master a language. Swapasap.com currently averages about 1200 hits per day (150 distinct
user sessions) and has over 1000 registered users. As Chief Technology Officer and Principal
I built the Swapasap website from the ground up. I wrote 90% of the code
and directed the development of the remaining 10%.
During the course of my work with Swapasap,
I mentored two software engineering interns as well as teaching Software Testing principles
and basic User Interface Coding techniques to non-technical team members.
I managed deployment processes and the back-end environment including data storage and performance
optimizations. On the front-end, I installed and customized COTS components, added internationalization
support, and integrated with third party APIs.
Technology Selection –
Made technology and server configuration choices designed to start small and scale as we
grew. Selected on web hosting service. Made server package choices. Built server
configuration, installation and upgrade scripts.
Development Environment –
Selected tools for individual development environments and project-wide source code
control. Laid out code structure. Designed and implemented branching and tagging
schemes. Wrote new developer jump-start and coding philosophy documentation. Resulting
ecosystem allowed for rapid, iterative development followed by tightly controlled
deployment onto shared servers.
Back-end Development –
Built and configured back-end services, DB structure (tables, views, procedures,
triggers, and indexes), and DB interfaces. Implemented entire server stack on a
single box, but designed all service calls to scale and handle the existence of
multiple servers in multiple tiers. Built class and page structure. Optimized code
for expected 95%+ read environment.
Front-end Development –
Front-end work focused on creating an appealing design that was transportable to multiple
browsers in multiple form factors. Internationalization was critical given the multinational
project team and target audience. Made choices on whether to build or integrate components
for UX services like messaging and chat/video chat. Integrated with Google services for
mapping and location data. Integrated with Facebook for registration and login.
Key Concepts/Technologies –
Apache, Facebook API, Google Maps API, Google Translate API, Google Places API, Freichat,
Bash, Git, PoEdit