Technologies I've worked with
(Not an exhaustive list.)
Python is the language I know best.
Other languages that I have worked with, but am not an expert in: Ruby, Haskell, bash, C#, PHP, Perl, Matlab, and Visual Basic.
- Frameworks: Django, CherryPy, Flask, Pylons, Ruby on Rails, Angular
- Infrastructure: Apache, DNS, Docker, AWS, Rackspace, DigitalOcean, Celery, RabbitMQ
- APIs: REST, OAuth, OpenID, Amazon, Authorize.net, Facebook, HubSpot, LinkedIn, Mailchimp, Mailgun, PayPal, Twitter
- Other: Bootstrap, selenium, mechanize, node.js
I know Linux very well. I use it on my desktop as well as all the servers I manage.
I can do systems programming (i.e. things like sockets, process control, IPC, threading, epoll, etc.). I have some basic knowledge of Linux kernel internals.
I can also do Linux system administration, server configuration, etc.
I have a background in math and physics as well as some knowledge of machine learning and signal processing.
I have worked on assorted computer vision and computer graphics projects which have included lots of OpenGL and image processing. I have also done some "big data" and machine learning projects. I am comfortable with many of the standard Python tools for scientific work, such as IPython, numpy, scipy, pytables, matplotlib, etc.
Other things I've worked with:
- Open Dynamics Engine
I have worked with Postgres, MySQL, and SQLite extensively, and redis to a lesser degree. I have done lots of database design and implementation and know SQL reasonably well.
GUI ToolkitsI've worked with Qt, GTK, WxWindows, and WinForms.
- Intel RealSense
I have a little experience programming the Arduino and STM32 microcontrollers, and would be interested in doing more of this.