Senior Python Developer/architect Resume
New York, NY
SUMMARY
- Masters in Computer Engineering with 9+ yrs software development experience in professional environments;
- High potential skills in development/deployment of Desktop/Web applications using Python, SQL, Shell, HTML/CSS/JavaScript targeted for all three major platforms - Windows, OS X, Linux or the Cloud;
- Hands-on experience with Financial/Insurance software, GUI development, version controlling, CPU/GPU architectures, profiling and debugging in a test-driven environment; coding style is “less is more”.
- Proven abilities in math, problem-solving, documentation, algorithm design, and creative/analytical thinking;
- Working style is extreme passion, reasonable and accountable. Can work independently or in a team.
TECHNICAL SKILLS
Using Currently (Hot): Python, Git, AWS, MySQL, SQLAlchemy, RabbitMQ, Jenkins, Ansible, HTML/CSS/JS;
Used Recently (Warm): Django/Flask, knockout.js, wxPython, Postgres, SQL Server, SVN, CVS;
Used a while ago (Lukewarm): OpenCV, Pyramid, Mercurial, SSL, C, CUDA, Perl, Oracle;
Developed stuff on: Windows 7, Windows XP, Linux (Ubuntu, RHEL, Fedora), OS X 10.5+, Amazon EC2;
Played with: Quartz, Wing IDE, PyCharm, Eclipse, Visual Studio, nginx, Tornado and several other stuff.
PROFESSIONAL EXPERIENCE
Senior Python Developer/Architect
Confidential, New York, NY
Responsibilities:
- There’s a bunch of data matching algorithms out there, but the one I created was original and custom tailored to verify and match the entity information coming from multiple sources.
- Introduced a brand new SQL Alchemy-based framework that integrates seamlessly into Bloomberg Application Service (BAS) layer. The framework support both ORM and non-ORM approaches to SQL. Very robust.
- Introduced a well-defined and configurable framework for business logic and data validation on the service layer - I called it the ‘Sentinel’. This was used to prevent any bad data or improper requests from entering your service layer. It was quite powerful.
- Introduced a novel way to process the service requests - it is called ‘Action Processing’. It allows you to process service layer requests based on a series of actions.
- Contributed, for about a month, to the design of entity resolution algorithms - also called the dedupe problem in popular circles.
- Worked with different teams on different deployment strategies for Python applications on Linux servers.
- Worked with Bloomberg custom packaging systems like BPKG and DPKG for deployable packaging of the python applications and libraries.
Tools and Libraries: Python, Git, BAS (Bloomberg Application Services), MySQL, sqlalchemy, Flask, Linux/Unix, Jenkins
Senior Python Developer
Confidential, New York, NY
Responsibilities:
- Built a very comprehensive auditing tool (in Python) to compare the results from two of their top in-house Analytical systems;
- Used Amazon S3 and Hadoop HDFS tools to create reports on file and content comparison;
- Created new ways to deploy python modules on secure file servers.
Tools and Libraries: Python, concurrency, gevent, Hadoop, Jenkins, Amazon Web Services - EC2, S3, Redshift
Senior Python Developer
Confidential, Brooklyn, NY
Responsibilities:
- Develop the Data Warehouse components like Universal Data Loader (UDL) to support data ingestion and edmigrate - a component to migrate all data in to the database for reporting purposes
- Monitor the core Amazon Machine Images (AMIs) and deploy apps through various Dev-Ops tools on Amazon Web Services (AWS)
- Manage extensive inter-API communication through RabbitMQ messaging queue service
- Build test frameworks using Python-behave tool and automate them using Jenkins
- Design and architect the Ad Hoc Reporting and Analytics Package Design and Configuration system, using Pyramid/Flask/Django (each library/framework has it’s own pros/cons, so a little bit of everything was used)
- Contribute to the progress of the project by following agile methodology and the SCRUM process
Tools and Libraries: Python, Pyramid, behave, Ansible, Jenkins, Amazon Web Services - IAM, EC2, S3, unittest, Selenium, Postgres, SQLite, SQLAlchemy, Flask, Django, RabbitMQ
Senior Python Developer/Architect
Confidential, Jersey City, NJ
Responsibilities:
- Worked from the inception of converting a Desktop based application to a web based application
- Designed and developed SQLAlchemy-based libraries to interact with SQL stored procedures and functions
- Responsible for the architecture of RESTful web service layer using Flask library routing mechanism
- Transitioned raw database calls to performance-oriented ORM calls
- Modeled the service layer data into separate classes as opposed to packing everything into ORM mappings
- Adhered to standards like PEP8, code decoupling, DRY principles and object oriented design
- Code complexity and code legibility given equal importance especially given the kind of flexibility Python offers
- Agile development through unit-testing and selenium testing using SQLite and Flask’s web testing framework
- Python decorator usage deserves a special mention because the application involved a lot of permissions, authentication and RESTful request pre-processing
- Developed custom error handling techniques for various segments of the application
Tools and Libraries: Python, Flask, Tornado, MagicMock, SQLAlchemy, unittest, Selenium, MSSQL, knockoutjs, jQuery, HTML/CSS, sammyjs, wtForms, SQLite
Senior Python Developer
Confidential Bloomfield, CT
Responsibilities:
- Django-centric agile development seated on a Amazon EC2 Red Hat and Debian servers
- Re-designed the Django service layer that talks to Oracle back-end
- Fixed a lot of issues with the ORM models to ensure data integrity for insurance products
Tools and Libraries: Python, Django, RHEL, Debian, Amazon Cloud, Oracle
Python Developer
Confidential, renton, NJ
Responsibilities:
- Created a Desktop software suite called the “Dashboard” from scratch - it mimics Django functionality
- Used wxPython heavily for widgets and features involved in creating a typical desktop application
- Enforced CRUD permissions using MySQL and presented them with the beautiful wxPython widgets
Tools and Libraries: Python, wxPython, Ubuntu, MySQL, PHP, HTML, AJAX
Software Engineer/Computer Analyst-II
Confidential, Princeton, NJ
Responsibilities:
- Video Viewer Application- Cross-platform Python GUI app to quick search for a particular video residing on remote samba servers, and enable the end-user to play the video remotely by creating local samba share;
- Mass Weighing Utility- Windows Python GUI app for animal mass weighing; talks to a digital balance using RS-232 or USB. Has many features like erroneous weight checking, automated animal detection;
- Automatic Performance Reporting System- Python-based GUI system to automate parsing of thousands of database records, capture anomalous results, generate excel reports and dispatch categorical emails;
- Cluster Computing- Harnessed the processing power of over 30 multi-core computers through cluster computing on MATLAB running on Windows, OSX and Unix/Linux (Ubuntu, Fedora) platforms, also called the MATLAB Distributed Computing Server (MDCS).
Software Developer
Confidential, Denton, TX
Responsibilities:
- Lead software developer of 'Quality Suite Colonoscopy software' used by Mayo Clinic, Rochester; marketed by the Endometric Corporation;
- Real-Time GPU Application: 25 fold speed up; Designed developed and tested an application using C and NVIDIA CUDA which uses the power of single/multiple Tesla GPUs for real-time computer-aided colonoscopy detection methods through binary image processing techniques. Built using Microsoft Visual Studio 2008;
- Maintained Python/Django based web app which allows manipulation of experimental colonoscopy data records of several patients stored in MySQL and monitored using SVN on Ubuntu;
- First authored the following research paper - "Effective and Accelerated Informative Frame Filtering in Colonoscopy Videos using Graphic Processing Unit". BIOSIGNALS 2011 (Published).
Back-end Intranet Web Developer
Confidential
Responsibilities:
- Admin Management: Enforced Bank Employees ‘User Login’ Authentication with JavaScript, Django/Python, SSL and MySQL;
- Background Check: Checked authenticity of applicant’s profile using Perl-based searching of MySQL records;
