Contact Us: 773.255.6869 info@mccannpartners.com

Technology Careers

Connecting talented IT professionals with cutting-edge opportunities.

Here at McCann Partners, we make your career goals our goals as well. We are proud to work with talented IT professionals like you, and we are committed to providing you with a quality experience and opportunity, whether that means finding a more challenging, dynamic position or achieving greater work/life balance. Let the goals you have for your career become McCann Partner’s mission.

Are you searching for your next IT job opportunity? McCann Partners is ready to help you achieve career success. Please search our current opportunities using the links below or contact our office to speak to a member of our recruiting team.

clients       clients

Following are just a sample of the types of positions we place:

  • NET Developer (Junior- and Senior-Level, Team Lead)
  • BizTalk Architect
  • Business Analyst
  • Desktop Engineer
  • Developer Operations Engineer
  • Director of Product Management
  • Enterprise Architect
  • Java Architect
  • Java Developer (Junior- and Senior-Level, Team Lead)
  • Network Engineer
  • PHP Developer (Junior- and Senior-Level)
  • Product Manager
  • Quality Assurance Analyst
  • Ruby on Rails Developer (Junior- and Senior-Level)
  • Systems Administrator
  • UI Architect
  • UX/UI Designer
  • Vice President of Application Development

Please search our available jobs or contact us for a full list of current opportunities.

Available Jobs Listing

Principal Developer
Chicago, Illinois - Added Feb 11, 2016

Full Description:

McCann Partners has teamed up with a company in the River North area of Chicago to hire a Principal Developer . This position is a full-time , newly-created role due to strategic growth initiatives for the software engineering group.

Job Summary

This position provides assistance and input to management, develops and leads large multifunctional system activities, solves complex technical problems, writes complex structure, and serves as a senior source of expertise. The position also may provide sizing or budget recommendations to management team. This role also provides prompt recovery and problem escalation for the exceptions, extrapolating and integrating information within defined boundaries, using multiple system management and problem management tools.

Qualifications

  • 10+ years of Systems Engineering experience.
  • BS Engineering/Computer Science or equivalent experience required, advanced degree preferred.

Experience/Technical Skills

  • Good change management skills.
  • Advanced knowledge of storage systems, Linux kernel, UNIX kernel, UNIX file system, and Windows infrastructure.
  • Program installation and troubleshooting.
  • Knowledge of virtual server environments and thin client.
  • Knowledge of scripts for automation.
  • Advanced understanding of system and problem management tools.
  • Knowledge of system recovery procedures.
  • Performance improvement.
  • Strong communication skills.
  • Ability and willingness to mentor junior staff.
  • Strong organization/project planning, time management, and change management skills across multiple functional groups and departments, and strong delegation skills involving prioritizing and reprioritizing projects and managing projects of various size and complexity.
  • Advanced problem-solving experience involving leading teams in identifying, researching, and coordinating the resources necessary to effectively troubleshoot/diagnose complex project issues; prior success extracting/translating findings into alternatives/solutions; and identifying risks/impacts and schedule adjustments to facilitate management decision-making.
  • Advanced communication (verbal and written) and customer service skills. Strong interpersonal, communication, and presentation skills applicable to a wide audience including senior and executive management, customers, etc., including diction/terminology and presenting information in a concise and effective manner to clients, management, and various departments using assorted communication mediums.

Key Accountabilities | Responsibilities

  • Recommend and plan use of new system features and hardware for new products and servers to improve overall operation of system and productivity of staff.
  • Demonstrate expertise and thorough understanding of major system components in completing assigned tasks (i.e., storage systems, Linux kernel, UNIX kernel, UNIX file system, and Windows infrastructure).
  • Establish standards and guidelines for job control/scripts and associated procedures.
  • Act as a mentor to other systems engineering team members, as necessary and appropriate.
  • Write command processors for execution under multiple system environments.
  • Develop plans and procedures and establish guidelines for overall system performance improvement.
  • Communicate to vendors additional features or products needed and work with user organizations to effect system improvements.
  • Manage change management.
  • Work closely with development groups, support groups, and vendors to coordinate special operations, and communicate/escalate problems as appropriate to meet assigned deadlines.
  • Assist in daily support of the systems/products assigned, through early detection and pursuit or changes in system responses or operation.
  • Work closely with support groups to refine system monitoring and reporting, and to assist them in their analysis and problem recovery.
  • Diagnose complex system problems using dumps, traces, or other diagnostics aids.
  • Diagnose system performance problems using available standard performance tools and system indicators such as queue lengths, CPU utilization, etc.
  • Install program products and system components or aid in installation by end users.
  • Develop user mods for installation of customized existing routines, device drives, and other system modifications.
  • Develop optimum system configurations and plans for installation of hardware devices.
  • Write commands or processes for execution under multiple system environments. Develop and implement security programs: manage and execute project deliverables; communicate to affected stakeholders including departments within the company; develop program procedures including guidelines and flow diagrams to be implemented on an ongoing basis; and develop tools or metrics that allow for the measurement of successful program implementation.
  • Review job control/scripts developed by less experienced staff members and assist in modifications of same for optimum performance and operation.
  • Demonstrate understanding of system dump contents, system control block structures, all characteristics/features of hardware being used, and all system performance principles.
  • Debug any system problems, develop online procedures for execution of commonly used processes, and perform procedures necessary for recovery.
  • Demonstrate thorough understanding of all system components and of program products assigned to support.
  • Demonstrate knowledge of system parameters to control, configure, and install various systems; in-depth knowledge of software installation aids; and user knowledge of all facets of the online system.
  • Provide prompt recovery and problem escalation for the exceptions, extrapolating and integrating information within defined boundaries, using multiple system management and problem management tools.
  • Assist in daily support of the systems/products assigned, through early detection and pursuit or changes in system responses or operation.
  • Demonstrate thorough understanding of major system components in completing assigned tasks (i.e., storage systems, Linux kernel, UNIX kernel, UNIX file system, and Windows infrastructure).
  • Configure controls; install or troubleshoot programs within multiple system environments.
  • Construct Job Control Language (JCL) or scripts for processing of workloads by system.
  • Develop job control procedures or work flow diagrams for commonly used processes and automate wherever possible.
  • Provide prompt recovery and problem escalation for the exceptions, extrapolating and integrating information within defined boundaries, using multiple system management and problem management tools.
  • Partner closely with development groups, support groups, and vendors to coordinate special operations, and communicate/escalate problems as appropriate to meet assigned deadlines.
  • Apply problem-solving skills in multiple operating environments to support assignments involving the execution of a series of related tasks.
  • Perform online system functions to assist with tasks encountered in execution of daily responsibilities such as utility functions and editing of files.
  • Develop lists/scripts for execution of commonly used processes and automation of simple tasks.
  • Proper management and implementation of team changes and service requests.
  • Proper creation, execution, documentation, and closure of tasks, changes, and requests.

Qualified applicants may apply by sending a resume, as well as salary requirements.

This is a full-time employee direct placement opportunity, no 3 rd parties please. U.S. Citizens and those authorized to work in the U.S. are encouraged to apply. We are unable to sponsor at this time.

Apply for Principal Developer

Fill out the form below to submit your information for this opportunity. Please upload your resume as a doc, pdf, rtf or txt file. Your information will be processed as soon as possible.