Lead Software Engineer - Solution Center
Through our Advanced Technology Solution Center (ATSC), located in Schaumburg, IL, and our Development Centers located throughout the mid-west and in China, our project teams provide our clients with full life cycle delivery for their project-based application requirements utilizing our customizable J2EE / Open-source framework. ISS provides our employees with the challenge of contributing to the delivery of high impact business solutions of exceptional quality, using advanced technology. Our employees enjoy working in an innovative team environment that affords them with the challenge of working with the latest technologies, the fulfillment of delivering high impact solutions, and a management team that encourages advancement of knowledge.
The Lead Software Engineer / Architect reviews technical strategies with the Solutions Architect, Project Manager and Business Analyst to derive an understanding of the implications of the roadmap to the application design and communicates any issues. Provides team leadership, support, mentoring and guidance to development teams during analysis, development and testing processes; identifies and mitigates risks to ensure quality, on-time solution delivery.
The Lead Software Engineer / Architect participates in the translation of high-level specifications, for software objects, into designs. The scope of the design responsibilities can include creating object models, defining or creating graphical user interfaces, designing application and infrastructure objects, integration adapters, component interface specifications, and system prototypes. Responsible for all technical aspects of project including writing code, unit testing, integration testing, debugging, using third-party class libraries, working with a configuration management tool and collaboration of development team efforts. Executing project standards for source code documentation and development environment. Participating in analysis activities, software design reviews, source code reviews and GUI design reviews. Communicating software design and development status to the ATSC Manager.
Required Skills Excellent oral and written communication skills and personal time management skills Bachelors degree - preferably in computer science - or equivalent experience Proven results oriented leadership focused on delivery, especially in the areas of writing reusable, high-performance, reliable and maintainable code; process oriented 7 years software engineering experience developing and supporting computer software including 5 years designing and developing object-oriented and web applications in a Unix or Windows environment and 3 years experience technically directing, mentoring and growing software development teams Interpret end-user business requirements to develop and/or modify technical design specifications. Participate in writing functional specifications, performing analysis, designing, testing, and implementation of applications Code and successfully perform unit and integration testing of software to ensure proper and efficient execution as well as compliance to the business and technical requirements Lead structured technical and functional walkthroughs of specifications and programming logic with project team members Resolve in a timely manner problems that arise with existing production applications to ensure the efficient and proper functioning of application components Participate in acceptance testing to ensure client/user needs are met Migrate applications to quality assurance and/or the production environment, or perform quality assurance as necessary Develop and maintain systems/technical documentation through the full project life cycle Mature development practices experience; project experience with iterative and incremental processes using Use Cases and strong architectural approach: RUP, Agile or similar Understanding of object-oriented software development concepts (e.g.: inheritance, polymorphism, encapsulation and composition); must be able to use these concepts in a software design of a specific component Ability to create class diagrams, interaction diagrams and state diagrams from a business object model, requirement specification, or other analysis artifacts Ability to use design patterns and component frameworks in design activities and to translate concepts from a design model to a working software object; create component interfaces and specifications for teams Proficiency with SQL, and working knowledge of relational database design and development Design and development skills should also include experience with building distributed computing applications and understanding the performance implications of interface design for distributed object services Demonstrated proficiency with: developing software using UML configuration management concepts and principles test-driven development performance-engineering activities using tools (e.g.: Rational Quantify, KL Group J-Probe, or Mercury Interactive LoadRunner Ability to handle multiple competing priorities; ability to learn and adapt to new development technologies and environments, and changing business requirements; ability to work within a team environment and with cross functional groups Ability to identify and/or clarify issues impeding development progress; communicate assessment of analyzed software requirements to determine feasibility of design within time and cost constraints
 DESIRED SKILLS AND TECHNOLOGIES: Demonstrated proficiency with modeling tools: Rational Rose, EclipseUML, Poseidon, System Architect J2EE technologies including Servlets, JSP and/or JSF, JDBC, custom tags, EJB, JNDI Working knowledge with front controllers - Struts, Spring or similar Proper use of design patterns including MVC Knowledge of GoF and/or J2EE design patterns O/R Mapping principals, concepts, and implementation tools Strong Relational Database (concepts and implementations): DB2 or Oracle and similar · Development environments: Eclipse IDE, IBM WSAD or similar Application Server: JBoss, WebSphere or similar Experience with Service Oriented Architecture (SOA) and Web Services Technologies (SOAP, WSDL, XML, XSD) and an understanding of software architectural and design issues Experience with XML technologies: SAX, DOM, and XSLT · Strong background with Operating Systems: Unix or (Linux, AIX or similar), and Windows Background with secure communications Test Driven Development: JUnit, Mauve or similar Advanced experience with configuration / problem management tools: Clear Case, CVS, Subversion, Perforce, Visual SourceSafe / ClearQuest, PVS Tracker, Razor or similar Relational Databases: Oracle, DB2, MySQL, MS SQL Server JMS queuing: WebSphere MQ, BEA MQ, Active MQ Performance profiling and monitoring concepts and tools EAI Experience: SeeBeyond, Ascential, Mule, others Developing java source code using Eclipse IDE, IBM WSAD Continuous integration: Cruise Control, Ant Hill, Continuum Build Management and automation using: Ant, Maven or similar Experience with e-Commerce or other order processing systems Specific experience with - detailed design, responsibility for reviewing code of other developers, Drools or Rules Engine, JSP, Ajax
Benefit OverviewÂ
Paid vacation and holidays Medical and Dental coverage Long Term Disability Insurance Life Insurance 401 K Competitive salaryBusiness Casual work environmentOnsite Cafeteria
|