PageRenderTime 60ms CodeModel.GetById 34ms RepoModel.GetById 0ms app.codeStats 0ms

/source/resume/index.markdown

https://github.com/davidjbeveridge/davidjbeveridge.github.com
Markdown | 159 lines | 127 code | 32 blank | 0 comment | 0 complexity | 0f77f9dd9e5d813e620f84e4d9118b4b MD5 | raw file
  1. ---
  2. layout: page
  3. title: "David Beveridge"
  4. date:
  5. comments: false
  6. sharing: false
  7. footer: false
  8. body_id: resume
  9. ---
  10. [davidjbeveridge@gmail.com](mailto:davidjbeveridge@gmail.com)<br />
  11. [(970) 315-2387](tel:9703152387)<br />
  12. [github.com/davidjbeveridge](https://github.com/davidjbeveridge)<br />
  13. ## Summary
  14. - Team leader with knowledge of software engineering principles and an eye
  15. toward quality, scalability, and developer productivity.
  16. - Eight years experience building web applications, doing full-stack development
  17. with Ruby on Rails, Node.js, JavaScript MV\*, ES6/ES7/ES20\*, CoffeeScript, PHP, Scala/Play.
  18. - Significant experience building front-end and single-page applications
  19. using semantic HTML, CSS3, JavaScript (React.js, Redux, Backbone.js, etc),
  20. and more
  21. - Depth of knowledge in JavaScript (both front-end and back-end), HTML, CSS, and
  22. Software Engineering.
  23. - Breadth of knowledge across several stacks, build systems, roles, engineering
  24. practices, and project management.
  25. ## Work Experience
  26. ### Originate, (2012-2016)
  27. [www.originate.com](http://www.originate.com)
  28. #### JavaScript Architect
  29. - Trained and mentored devlopers with a focus JavaScript best-practices and
  30. software engineering principles.
  31. - Maintained an active development role on multiple projects, including tech
  32. lead roles.
  33. - Defined code-review process and best practices
  34. - Stressed the use of test-driven development for all JavaScript code
  35. (front-end and back-end), and provided related training and mentoring.
  36. - Led code review across all projects, focusing on JavaScript best-practices and
  37. test-driven development.
  38. #### Senior Software Engineer
  39. - Developed multiple web applications across the whole stack, in both lead and
  40. support roles.
  41. - Large percentage of work focused on front-end JavaScript with MV\* frameworks
  42. like React.js and Backbone.js.
  43. - Used Test-Driven Development, code reviews, and constant refactoring to keep
  44. the codebase clean and maintainable, and keep all developers familiar with
  45. codebase.
  46. - Projects included rapid prototyping, greenfield development work, upgrades,
  47. work with legacy software, and rescue operations.
  48. - Deployment and DevOps work for multiple projects including work with Debian,
  49. Ubuntu, Apache, Passenger, MySQL, PostgreSQL, MongoDB, Redis, and others.
  50. ***Keywords**: JavaScript, ES6, ES7, ES2015, ES2016, Ruby, Rails, Sinatra,
  51. Grape.rb, Node.js, Express.js, React.js, Redux, Flux, Backbone.js, Spine.js,
  52. Underscore.js, jQuery, Telerik KendoUI, CoffeeScript, Sass, LESSCSS, Stylus,
  53. Bootstrap, Responsive Design, Haml, Jade, Slim, HTML5, Markdown, PHP, Python,
  54. Scala, Play, TDD, Code Review, Legacy Software, Refactoring, Mobile-first,
  55. Git, GitHub*
  56. ### Card Gnome, Inc. (2010-2012)
  57. [www.cardgnome.com](http://www.cardgnome.com)
  58. Card Gnome is a greeting card company, specializing in direct-to-recipient delivery.
  59. #### Senior Ruby on Rails Developer
  60. - Instituted Behavior-Driven Development in order to improve communication
  61. between team members, automate the acceptance process, and improve product
  62. quality.
  63. - Led team of four, developing an eCommerce application.
  64. - Documented development processes, including tool installation, environment
  65. setup, version control usage & flow, and testing process.
  66. - Coached other team members on object-oriented design, code maintainability,
  67. version control, testing, and programming skills, i.e., JavaScript, Ruby.
  68. - Created web-to-print system, including a robust visual editor (implemented in
  69. JavaScript), and Ruby back-end that would render cards as a PDF, create
  70. thumbnails, and send proofs to printer.
  71. - Provided technical support for customers and the artist community.
  72. - Documented development practices and installation.
  73. - Automated common development tasks: webserver & worker process, management,
  74. database control, logging, remote consoles, deployment.
  75. ***Keywords**: Ruby, Rails, JavaScript, Spine.js, Sass, XHTML, CSS, DevOps*
  76. ### StudioDBC (2008-2010)
  77. (no link)
  78. StudioDBC was a web consultancy I co-founded, now defunkt.
  79. #### Web developer
  80. - Worked directly with multiple small-business clients to deliver brand-driven
  81. web presence, eCommerce solutions, and miscellaneous technical solutions.
  82. - Interfaced directly with clients and designer to develop specifications and
  83. acceptance criteria.
  84. - Engineered web sites at every leveldata models, business logic, rich user
  85. interface, and interaction.
  86. - Created web solutions using PHP/MySQL, HTML, CSS, JavaScript, WordPress,
  87. Codeigniter, and Magento
  88. - Developed custom, brand-specific WordPress themes for clients
  89. - Developed several WordPress plugins to manage content, display slideshows,
  90. embed video, transform podcast feeds into xspf feeds, and manage reproducible
  91. page state with AJAX requests
  92. - Used both Progressive Enhancement and Graceful Degradation to deliver
  93. excellent user experience on multiple browsers including multiple versions of
  94. IE, Firefox, Chrome, Safari, Mobile.
  95. - Administered LAMP webservers, including configuration, security, and
  96. deployment.
  97. ***Keywords**: JavaScript, CSS, XHTML, PHP, WordPress, CodeIgniter, Magento,
  98. MySQL,*
  99. jQuery
  100. {:#presentations}
  101. ## Presentations
  102. ### TDD In JavaScript
  103. [http://davidbeveridge.net/TDD-in-JavaScript/index.html](http://davidbeveridge.net/TDD-in-JavaScript/index.html)
  104. A three-part talk I gave Sept. 18, 2015 for [Radial Development
  105. Group](http://radialdevgroup.com/) on doing Test-Driven Development with
  106. JavaScript. The slides mostly cover TDD as a practice. This was followed by
  107. sections on doing TDD with Backbone.js and React.js, both with some live coding
  108. as an example.
  109. [TDD In JavaScript](http://davidbeveridge.net/TDD-in-JavaScript/index.html)
  110. [Behavior-Driven Development With
  111. Backbone.js](http://davidbeveridge.net/TDD-in-JavaScript/backbone-tdd.html)
  112. [Behavior-Driven Development With
  113. React.js](http://davidbeveridge.net/TDD-in-JavaScript/react-tdd.html)
  114. ### Is this thing on? Testing JavaScript, 1, 2, 3.
  115. [https://github.com/davidjbeveridge/TDD-is-this-thing-on](https://github.com/davidjbeveridge/TDD-is-this-thing-on)
  116. Presented May 27, 2015 at the Colorado Springs JavaScript Meetup, this was the
  117. first version of my talk on TDD with JavaScript. I covered TDD as a practice,
  118. and then did some live code demonstrating TDD on a sample project, which was a
  119. proof-of-concept for a script loader that only executes scripts matching a known
  120. hash.
  121. ### ActiveRecord Migrations
  122. [http://davidbeveridge.net/ActiveRecord-Migrations-Presentation](http://davidbeveridge.net/ActiveRecord-Migrations-Presentation)
  123. I originally presented this talk in 2012 to the Las Vegas Ruby Group. The group
  124. was making our way through "The Rails 3 Way", and I presented on ActiveRecord
  125. Migrations. Much of the information for this talk was taken from Chapter 6, and
  126. opined in person.
  127. <a href="/downloads/david-beveridge-resume-20160930.pdf" class="resume-pdf-link hide-print">Download PDF</a>