Responsible for analyzing, designing, debugging and/or modifying software; or evaluating, developing, modifying and coding software programs to support programming needs. Maintain and enhance existing code with focus on implementation. Collaborate with and assist team of engineers in writing functional, design and user interface specifications. Follow software lifecycle process when developing software. Help identify solutions to problems encountered in software cycle. Architect, design, develop and deliver C++/Java applications. Work with little or no supervision and is able to take general direction and formulate specific tasks to accomplish the desired end result. Create, document, promote, and manage reusable code components. Maintain technical documentation throughout the project lifecycle. Perform any necessary configuration and tuning performance to the next level. Lead a technical team of other developers during the implementation and maintenance process. Work with other Engineers in planning, prioritizing and executing assigned tasks within deadlines. Recommend new technologies to ensure quality and productivity. Utilizes graduate-level research and analysis skills. Employer will accept Master’s degree in Computer Science, Engineering or related technical field and 2 year(s) of work experience in job offered or 2 year(s) of work experience in a computer-related occupation. Education or experience must include: 1. Agile/Scrum experience 2. Object-oriented design and coding skills in C++ and Java 3. Python 4. Secure coding best practices 5. Design and deliver high-performance cross platform components and applications 6. Android development experience 7. Algorithm development Any suitable combination of education, training, or experience is acceptable.