Job Code : 10002
Category : Developer
Type : Contract to Hire
Job DescriptionUnder the supervision of a Technical Lead, Team Lead and/or the Manager of Application Development, the Developer II works with senior developers, quality analysts, and business analysts to understand, test, and troubleshoot issues for the company's software products. The Developer II develops a broad knowledge and understanding of supported product systems and leverages his or her skills in the appropriate technologies to develop software solutions to complex issues for all phases of the software development lifecycle. The Developer II is responsible for recommending and implementing short-term “hot fixes” for high-priority issues and assists with development of long-term solutions. He or she works with other developers and team leaders to develop automation tools and company-wide software components.
· Provide development support to the production support team to facilitate maintenance of key production systems.
· Leverage appropriate technologies (code development, product features, production support DB scripts, etc.) to develop programmatic solutions to recurring system issues.
· Use sound test-driven development practices (red/green).
· Employ appropriate testing approaches for legacy code.
· Remain informed of supported product team features and functionality.
· Refactor code to improve its readability, testability, maintainability, and performance.
· Follow and help refine programming standards, best practices, coding styles, and other development guidelines.
· Participate in design/code reviews.
· Participate in daily team meetings.
· Contribute substantially to team goals as set by the Manager.
· Be available for rotational, after-hours “on-call” duties as required ensuring critical financial systems/functions are operational.
· Work with senior developers to ensure automated deployment of code.
· Develop applications through their full lifecycle.
· Interpret written requirements and technical specifications documents.
· Support, maintain, and document software functionality.
· Perform other duties as needed or assigned by a manager.
Education and Experience:
· Bachelor’s degree in Computer Science or related field and/or equivalent experience
· Proven working knowledge of Angular (version 2+) practices and commonly used modules based on work experience
· Creating self-contained, reusable, and testable modules and components
· Ability to provide SEO solutions for single page apps
· Working knowledge of CSS and SaSS libraries
· Validating user actions on the client side and providing responsive feedback
· Creating custom, general use modules and components which extend the elements and modules of core AngularJS
· Automating the build process for production, using task runners or scripts
· Creating e2e test suites for all components, and running them with Karma (or a well reasoned alternative)
· Experience with NativeScript a major plus
· Experience with TDD a major plus
· Experience with Twitter Bootstrap is a plus
· Experience with Agile software development practices
· Knowledge of financial systems is a bonus
· Aptitude for researching and troubleshooting root cause system issues
· Takes ownership of decisions, actions, problems, and solutions
· Fluent with Microsoft Excel, Word, and Outlook; exposure to MS Project
· Accuracy and thoroughness in the implementation of project specifications and design requirements
· Demonstrates refined written and verbal communication skills, fosters open communications, listens effectively, and builds strong partnership networks that result in consistent forward momentum
· Skilled at solving challenges in a directed, methodical manner and analyzes the current issue to envision creative solutions
· Takes initiative to complete critical tasks, especially in team settings with dependencies on other people
· Works effectively in the face of stress, ambiguity, difficult situations, and shifting priorities
· Steps outside of “comfort zone” to tackle new issues/challenges in an aggressive manner; deals well with ambiguity in a fast-paced, cutting-edge, and entrepreneurial environment
· Challenges the status quo to generate new ideas and implements unique solutions to fix challenging problems
· Collaborates and openly seeks and shares information across teams and departments
· Has a solid background in his or her technical field and continually augments experience and skills with the latest research results and techniques
· Demonstrates a bold commitment to the total alignment of actions, words, and professional beliefs