  | 
      | 
    
	 
	
Personnel Management
 
  Building
    a team is generally  time consuming and includes reviewing resumes, coordinating
    with recruiters, interviewing and following up with potential candidates.
    However, building a team allows you to tailor the personnel to your projects
    needs. Some existing teams
    work well together, but others may need a
    lot of coaching. The goal is to improve an existing teams by rewarding
    stellar employees and setting goals for those who need motivation.
    Mentoring employees in interpersonal, communication and technical skills
    is critical to a well functioning technical team. Also critical is the ability
    to communicate and coordinate with other peer and higher level managers.  
    
	
Program and Project Management 
    
      Shipping a product takes a lot of planning, coordination 
    and communication. Usually some amount of formal process is necessary but
        the amount of process needs to be tailored to the scale of the project
        collaboration. Product specifications, functional
        requirements,
          use cases, detailed design and object models, test plans, and documentation
          plans
        can all be tailored depending on the level of complexity of what is to
        be shipped and when. We view program and project management as a focal
        point, someone who can coordinate requirements from Marketing, management,
        engineering, quality assurance and users then track those requirements
        through to the projects end and beyond. It is important to coordinate
        end user documentation and quality assurance at early phases of the development
        cycle. Tracking and adjusting project time lines is vital, including
         incorporating engineering, QA and publications estimates into the master
        schedule.  
       
    Design and Development
  In theory, a  linear development life cycle is the most
    efficient way of seeing a project from concept to fruition, but in reality,
    that almost never happens. Thus it is important to begin by accepting your
    software development
    will likely be a cyclical process. This is particularly true when human users
    are experience the final product. Admittedly, updating design documentation
    is time consuming, but it is incredibly useful for new employees
    as well as existing employees as they have to return to the development of
    a project for subsequent versions.  
    
User Experience
  Can engineers really design a product that all types of people, novice to
    expert, can successfully use? Quite possibly, if they are guided in using
    the right tools and techniques . Contextual Inquiry, participatory design,
    low fidelity prototypes, user studies and testing are invaluable for developing
    a satisfying (and non frustrating) user experience. Understanding that the
    user experience is not limited to how a human interacts with the computer
    is also critical. A holistic approach to user experiences also includes documentation,
    support and incorporating user defined changes into future versions of the
    product. 
   
Creativity
Did you know that programming is really a creative endeavor? Communicating
  good technical designs necessitates using diagrams,
  sketches,
  storyboards. 
  So a background of artistic
  endeavors that includes pottery, metalwork, jewelry, woodworking, landscape
  design, mosaics, and knitting certainly doesn't hurt.  
Programming
  Unlike many developers out there, we're not wedded to any one platform,
    operating system or language. Although we have extensive experience on PCs
    running Windows and DOS, Java
    and C/C++,
    we also have experience using Various/*nix, Apple
        Macintosh/OSX, DEC/VMS and Sun/OpenWindows platforms. Additionally we
    have done significant programming in Ada, Assembly, BASIC, HTML,
    Lisp, Modula-2, Perl, Prolog, Self, and Smalltalk. Even if you have a new
    and possibly esoteric language and you need some development help? We can
    learn it, we
    can help.  
   
Mentoring
  What good is knowledge if you can't share it? Over 24 years of experience
    in computer programming and product development is worth sharing. Helping
    friends and family with seemingly small computer issues is one way in which
    our knowledge is shared. Another is to be a resource for junior level employees
    - teaching and coaching them in programming skills as well as efficient design
    work habits. 
   
 |