Freelance Job Description
design and implementation of new products and features throughout the entire stack.
Ownership of codebase, maintaining it and ensuring it runs consistently.
Identify, design, develop, test, and release high quality, secure functionality as efficiently as possible.
Consistently identify opportunities to optimize and automate processes and workflow.
See beyond the current norm of operation, then design and implement solutions in stages.
Secure and safeguard data to preserve its integrity, reliability, and availability and ensure appropriate access levels are maintained.
Assist application developers with proper roll-out and versioning procedures.
Work with project team members in all phases of software development life cycle.
Work with team to understand the project requirements, system architecture, technical design, and develop the application components based on the design.
Work with team to follow system test plans, ensure software quality assurance standards are achieved, and validate that business goals are accomplished.
Interface with support, product management, project management, QA, DBAs, and other colleagues to support ongoing operations.
Track and report development progress and performance daily.
Create comprehensive technical documentation and release notes.
Ability to work in a fast-paced, deadline-driven environment.
Ability to work effectively within a diverse team and to communicate with others is crucial.
Ability to mentor junior software developers.
Four plus years experience developing applications leveraging the following:
Object-Oriented programming language (Python preferred)
Web Frameworks (Django preferred)
Containers and Container Application platforms (OpenShift, Docker, and Kubernetes preferred)
DBMSs such as PostgreSQL, DB2, Vertica
Some experience with the following preferred:
ETL tool (IBM DataStage preferred)
Version Control software/tools such as Bitbucket/Git
BI tools (Tableau preferred)
Cloud services (AWS preferred)