Senior Software Developer
Oak Brook, Illinois
1. Simplify and streamline an existing Windows application installation package with hundreds of HTML configuration files
2. Modifying and enhancing existing C++ and C# applications, to delivery business requirements.
3. Replace an existing Windows GUI application with an web app, provide identical functionality. Replace an existing Windows.
- 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.
- 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