Python Robot Framework Developer
Oak Brook, Illinois
This position will conduct technology evaluation and recommendation, mentoring developers through hands-on assistance as well as formal and informal training and some technical development. Work with business and development team in identifying, designing, and developing technical architecture solution components. As a technical leader, the job requires a pragmatic visionary that can translate business needs into workable technology solutions that scale both technically and operationally and also raise the engineering and operational standards. This position will also be responsible for application performance from performance modeling, to performance measuring/profiling, to performance tuning.
RobotFramework (RF) experience for use in a distributed system
- Familiar with Selenium2 add on for RF
- Python knowledge to add low level keywords (for remotely controller a remote windows machine and applications running there), same for remote Linux machines, validation keywords, remotely controlling running remote processes (Windows/Linux) via stdin/stdout
- Low level keywords complete documentation (use RF’s libdoc)
- Python script to run RF test cases. Features support for querying test cases, running selected test cases, combining results using rebot
- Python script to validate test cases (basic checks)
- Create simple storage (directory structure) for test artifacts
- Familiar with GitHub. Create , upload, etc
- Writing skills to finish user guide
- Propose and implement solution that combines desperate tools into a holistic process
- Soap/rest api for integrating with Zephyr
Primary Job Duties
• Senior-level research, design and development of computer software systems.
• Analyses software requirements to determine feasibility of design within time and cost constraints.
• Provides design recommendations and options, develops and integrates programs per specifications.
• Provides assistance in researching and adopting new and emerging technologies, evaluating new tools, technologies and platforms to be included in projects.
• Leads project planning sessions with clients and Business Analysts to analyze requirements.
• Defines scope of multiple complex projects.
• Estimates effort required for own work, and checks and agrees other team members' estimates. Accountable for planning work assigned to their team, including work breakdown, accurate estimate and identification of possible solution options.
• Accountable for tracking status of team's work and ensuring deliverables are produced on agreed schedules. Responsible to communicate accurately the status of ongoing work to stakeholders.
• Sets timeframes and schedules to meet business needs.
• Presents status updates for various projects to project management and senior managers.
• Ensures self and team develop modules using disciplined processes, adhering to industry standards and best practice guidelines.
• Works with vendors to understand technology and performs technical due diligence on third party technology delivery.
• May have cost responsibility for own team/project, and/or contribute to forecasting budgets and recommending expenditure without being fully accountable for them.
• Identifies ways to improve the operation of own area and to achieve efficiencies and results and assists in process improvement.
• Provides technical guidance to team members.
Qualifications / Requirements
• Bachelor’s degree in Computer Science. (Master’s degree preferred.)
• 8+ years of software engineering experience.
• Great technical and problem solving skills
• Knowledgeable in various software design patterns and be able to apply appropriate design patterns to solve business/technical problems.
• Proficient in RDBMS such as Oracle, SQL Server, etc
• .NET 3/.5/4.0 with WCF, WWF, WPF, and Silverlight
• Team player who works well across different streams (Product Management, Developers, QA, Operation Team, etc.)
• Strong written and verbal communication skills