|
|
Ian Tripp
12 Palmer Point Road,
Freeport ME 04032 | iantripp@outlook.com
| (207) 865 6272
|
|
Quick
|
Talented web application
architect and developer with excellent communication skills, a passion for
figuring things out, and a drive that gets jobs done. My keywords are
responsive, fast, asynchronous, and Oxford comma.
|
|
Software
|
Microsoft Office Suite,
Visual Studio, Eclipse IDE, Cloud9 IDE
|
|
Languages
|
C++, C#, Java, Python,
Ruby, JavaScript (jQuery, Angular, jQueryUI, Foundation, jqWidgets,
Bluebird, Require, Node), HTML(4/5), CSS(2/3),
SQL, PHP, SASS/SCSS
|
|
Frameworks
|
Flask (Python), Express
(JavaScript/Node)
|
|
Sql
|
MySQL, Oracle, PostgreSQL,
sqlite
|
|
NoSql
|
Redis, local storage (web),
MongoDB, Couchbase
|
|
Concepts
|
OOP,
Polymorphism/Inheritance, Async/Sync, web security, server and db
administration, web application design/development, websockets,
promises/callbacks
|
|
Experience
|
OWner, Southern Maine Tech Assist
11/2011
– 1/2014
Serviced local residents’ technology issues, and
designed/developed websites for local businesses. Built CMS systems
for website clients to make it very easy to edit their content.
Learned most importantly that owning a business and being
the only person to work directly the clientele is a very stressful
endeavor. Gained great experience with database design, web design,
application design, and development in all areas.
Technology
Guy (official Title), Break a leg software design
3/2014
– Current
I am the network, database, server, and security admin, as
well as chief designer and developer. I have put hundreds of hours
into researching the many hats I have to wear, as well as experience
putting that research into practice.
|
|
Education
|
Southern
Maine Community College, South Portland - Maine
Business
Administration
Accepted into the Phi Theta Kappa honor society, only kept
off of graduating with honors because of a philosophical difference with an
ironically idealistic philosophy professor.
|
|
Communication
|
I have experience
coordinating meetings, both between clients and myself, as well as between
members of my team. Always having an ear open to a co-worker stuck on
an issue can only help; it helps the business get more work done as well as
lowering stress and boosting morale in the workplace.
|
|
Leadership
|
At Break A Leg Software
Design, I was responsible for taking lead on and coordinating design,
coding, and standards for our small team. I had to learn to apportion
tasks to each person based on their strengths, while also not limiting
their exposure to learning new areas and finding new strengths.
|
|
Highlights
|
|
Southern Maine Tech Assist
|
Clients confidential by
contract
|
|
Designed,
developed, and maintained websites for 6 clients (1 PHP/Apache, 5
flask/Python).
Wrote
2 CMS systems (1 PHP/Apache, 1 flask/Python) that allowed clients to edit
their own sites without worrying about HTML, CSS, or FTP.
Used
AJAX and a MySQL database to store/retrieve site and user content,
Foundation/media queries to make the site responsive, and jQuery to
simplify DOM operations.
|
|
Break A Leg
|
|
|
Researched
appropriate open-source stack for cloud application, settled on
Linux>nginx>node>express>PostgreSQL/redis>Angular, using
SASS/SCSS compiled into CSS.
Designed
a fully normalized data-warehouse schema to be pulled into views that
could allow for denormalization for ease of retrieval, but maintain the
stability of storing normalized data. The DB design allowed for
both versioning and migrationless updates. The first being simple,
the second making use of multi-table inheritance and polymorphic
relations to allow for limitless Entity updates via subtyping.
Designed
and have mostly completed an Object Relational Mapper to be used with
node servers and SQL databases, creating JS Objects that represent DB
entities and allowing for both true polymorphic relations
(1-1,1-N,N-1,N-N) and asynchronous database updates. I was inspired
by SqlAlchemy for python applications, which does not have a true
alternative in the node world; I decided there should be one. When it is
complete it will be added to the node package manager repository under an
open source license.
Designed
a messaging system based on a redis memory store and Pub/Sub, also put
time into researching and implementing websockets as an alternative.
|
|
Freelance
|
|
|
Designed/Developing
a back end system for confidential client.
Based
on a Linux/Node/Express/Mongo(ose)/Angular stack (MEAN).
One
piece of the app is a cloud based label editor, for which I have
hand-coded Angular factories/services to handle modals, api interaction,
and drag/drop/resize/rotate events. It allows for cloud editing and
storage of product labels, customizable to any sized labels that can be
purchased.
Labels
are formatted for printing using CSS print-media queries.
Built
an underlying document editor upon which the label editor is simply an
instance, allowing for multiple editors on a single page if necessary).
The
document editor, modal service, and drag/drop service will be uploaded to
the bower repository under an open source license.
|
|
|
|
|
|