Location: Onsite – USA
Type: Full Time
Candidate responsible for planning, developing, and delivering assigned features of significant size and/or complexity for our Advanced Classification Engine.
Essential Functions:
- Breaks down User Stories, participates in design activities, and documents necessary information for feature/component implementation
- Takes ownership of existing code and/or writes new code
- Works with QA to review test plans and recommend testing strategies for features and components
- Debugs complex software modules, working from written and/or verbal descriptions of problems
- Develops and executes unit tests, end-to end customer driven test cases, automated regression testing, and otherwise works within Scrum development team to deliver a high quality product
- Assists in environment setup for development/integration of solution components
- Participates in design and code inspections
- Develops prototype versions of software modules and applications
- Works in a cross-functional team of other developers, QA, UX, and documentation
- Mentors and provides technical assistance to more junior developers
- Gives input to management on task duration estimates, technical information, and issue resolution
- Performs other duties and projects as assigned.
Education and Experience:
- Bachelor’s degree in Computer Sciences or equivalent work experience.
- 5+ years software development experience, including some experience working in an internet technologies environment.
- MUST have strong skills in Python.
- MUST have strong skills in virtualization technologies (VirtualBox, VMware, KVM).
- Advanced experience with networking technologies.
- Advanced experience with distributed/cloud design methodologies.
- Knowledge of software development practices and methodologies.
- Experience developing code for multi-threaded applications and fluent in the concepts of threads, processes, concurrency and locking.
- Understanding of security concepts: encryption, secure application development, defensive programming, software vulnerabilities and exploits, general issues in web security
- Experience with other languages is a plus: C/C++, Perl, bash.
- Experience with UNIX server administration (CentOS, RHEL, Ubuntu).
- Working knowledge of UNIX / Linux operating systems.
- Prior experience working in a commercial development environment: best practices for development/QA, schedules, processes, defect queues, code management, build environments
- Soft Skills
- Excellent problem solving skills.
- Flexibility and adaptability to changing priorities.
- Ability to work under pressure and to meet tight deadlines.
- Strong written and verbal communication skills.
- Self-starter with experience working in a fast-paced environment with minimal supervision.