Senior Server Rest Api Platform Developer
CurrentSome of the technologies and tools I use on a daily/regular basis below; I do dev, devOps and QE: Pulls and deploys from local/hosted Mercurial/git code depots. P4 too. Extend vanilla Capistrano deploy config to progressively push to a load-balanced, dynamic population of stage or production EC2 instances with no downtime. From scratch, craft CentOs/Deb/Ubuntu Linux instance builds and package build extensions from source or via pkg manager. Generate and extend Amazon AMI snapshots. Amazon EC2 production instance fleet management: DNS A-record setup; subdomain wildcards, instance load balance via ELB, add production autoscale/monitoring rule setup. Generate Journalled Amazon EBS volume builds,snapshots, resizing. API design and test frameworks is a big focus: I will build out API design documents and run team/client review/feedback. APIs are stylistically REST-like. I specify our RESTian API formalism via an WADL XML spec document, generate documentation and client SDK from the original WADL; each API supports XML/JSON response bodies. Finally Application layer: TDD; Rspec test framework needs tests for new APIs or features. I create new API MVC implementation with Ruby Rails/Merb/Padrino. Sometimes 3rd party library/gem selection, an editorial task requiring judgement and occasional legal review. MySQL table design and run migrations. Loop back to tests to watch for code coverage regression. Memcached and Redis configuration, Redis append mode for persistence, useful for certain noSQL applications. Tune and tweak Nginx and unicorn/mongrel configuration settings to optimize for target processor/core config. Keep on top of our MongoDB shard strategy. Design/deploy Oauth based session management layer, cache and metering of client Access Tokens. Review Splunk and Graylog log anomalies.