Since two decades author and leadership consultant Frank Kanu helps top managers and executives to improve success ratios and productivity.
 About Frank Kanu  |  Testimonials  |  Order Books  |  Free Articles  |  Press  |  Excellence in Leadership  |  Genius One

Genius One Inc., Smart Solutions for Growth

Frank Uncovers Excellence in Leadership

Posts

Job Description for a Senior Software Engineer

© Copyright Frank D. Kanu 2000-2008

Please feel free to use it!
PDF version

Being asked to put together a Job Description for a Senior Software Engineer I came up with this:

Primary Roles and Responsibilities:

  • Responsible for planning, processing and performing all jobs in an efficient manner with no assistance from the supervisor

  • Working closely with upper management.

  • Design and develop programming systems making specific determinations about system performance.

  • Responding promptly and professionally to bug reports.

  • Review and repair legacy code.

  • Expected to conduct system analysis and development, with limited support from professional staff, to keep our systems current with changing technologies.

  • Analyze, design, coordinate and supervise the development of software systems to form a basis for the solution of information processing problems.

  • Analyze system specifications and translate system requirements to task specifications for junior programmers.

  • Responsible for analysis of current programs including performance, diagnosis and troubleshooting of problem programs, and designing solutions to problematic programming.

  • Responsible for developing new programs and proofing the program to develop needed changes to assure production of a quality product.

  • Responsible for development of new programs, analyzes current programs and processes, and making recommendations which yield a more cost effective product.

  • Writes, edits, and debugs new computer programs for assigned projects, including necessary records and desired output.

  • Tests new programs to ensure that logic and syntax are correct, and that program results are accurate; assists lower-level programmers with programming assignments.

  • Document code consistently throughout the development process by listing a description of the program, special instructions, and any changes made in database tables on procedural, modular and database level.

  • Responsible for reading, understanding, and utilizing all part and assembly prints, forms, spreadsheets, bills of material, specification sheets, and technical references.

  • Responsible for utilizing tools and equipment involved in performance of essential functions of programming including measuring instruments.

  • Search, summarize and keep the team abreast of strategic information from all sources

  • Maintain client databases

  • Capable of writing proposals or papers.

  • Making presentations to customer or client audiences or professional peers.

  • Maintain positive client interactions.

  • Strong and effective inter-personal and communication skills and the ability to interact professionally with a diverse group of clients and staff.

  • Responsible for communicating with engineers and manufacturer’s technical support staff regarding programming needs and performance.

  • Provide general administrative support to the organization

  • Provide feedback to analysis/training staff about performance considerations / usability issues concerning software specifications and implementation.

  • Research and recommend software tools to management.

  • Provide assistance to testers and support personnel as needed to determine system problems.

  • Review, to the extent possible, changes in code and the environment that will affect system performance.

  • Provide recommendations to management concerning issues of programmer productivity and software development management.



Additional skills and/or areas of expertise:

  • Ability to solve problems quickly and completely.

  • Ability to identify tasks which require automation and automate them.

  • A solid understanding of networking/distributed computing environment concepts.

  • Solid understanding the principles of routing, client/server programming.

  • Possess excellent communication skills, with an emphasis on verbal and written communication.

  • Ability to multi-task and stay organized in a dynamic work environment.

  • Possess a positive attitude.

  • Ability to “think outside the box”.

  • Consult with the Lead Programmer and the Technical Manager regarding professional skill development.

  • Prepare reports and analyses setting forth progress, adverse trends and appropriate recommendations or conclusions.

  • Participate in development of long range planning for new projects and facilities.

  • Experience and ability to teach or instruct co-workers.

  • Providing advice, training and technical support for various projects.

  • Working closely with management team in evaluating current systems and making decisions on future development.

  • Possess extremely advanced technical skills.

  • As new technologies emerge and impact our systems, expected to learn these technologies very quickly and resolve any problems involved in integrating new technologies with our systems.

  • Expert knowledge of computer languages.

  • Expert knowledge of data structures.

  • Expert knowledge of computer logic and flow-charting.

  • Expert knowledge of computer program design methods and techniques.

  • Expert knowledge of all database vendor versions.

  • Expert knowledge of all compiler versions.

  • Ability to learn new programming languages quickly.

  • Good knowledge of mathematical and statistical principles and formulas.

  • Assists the Programmer Analysts in designing programs and databases.

  • Ability to write, edit, and debug computer programs to achieve desired output.

  • Ability to work productively in a team.

  • Expert knowledge of maintaining and debugging live software systems.

  • Expert knowledge of writing program documentation.

  • In-depth technical knowledge of the current hardware.

  • Expert knowledge of used operating systems.

  • Expert knowledge of standard development tools.

  • Expert knowledge of networking technologies from the programmers prospective.

  • Ability to determine whether a particular problem is caused by hardware, operating systems software, application programs, or network failures.

  • Good knowledge of security and encryption.

  • Updates and modifies computer programs to improve efficiency.

  • Performs work of high difficulty in designing, writing, editing, modifying, and debugging computer programs.

  • Define functional specifications of the system for the appropriate hardware.

  • Expert knowledge of component writing.

  • Demonstrated ability to use standard computing tools: Word processor, spreadsheet, browser, email, and file compression software.

  • Overall knowledge of the computing environment at large, e.g. typical uses and user populations of operating systems, communications protocols, hardware platforms, etc.



Perform other related duties incidental to the work described herein in support of the company.

Tags:
assists  automation  changing technologies  client databases  client interactions  client server programming  co workers  communication ability  communication skills  communications protocols  compiler versions  computer languages  computer logic  computer program design  computer programs  computing environment  computing tools  current systems  data structures  database level  database tables  database vendor  debug  debugging  design coordinate  designing solutions  determinations  development tools  difficulty  distributed computing environment  diverse group  document code  dynamic work environment  efficiency  email  encryption  environment concepts  expert knowledge  file compression software  flow charting  functional specifications  future development  hardware expert  hardware platforms  incidental  information processing  integrating new technologies  job description  junior programmers  legacy code  level programmers  live software  long range planning  management  management design  management team  material specification  measuring instruments  necessary records  network failures  networking technologies  new programs  new projects  operating systems  operating systems software  performance considerations  performance diagnosis  populations  positive attitude  professional peers  professional skill development  professional staff  program documentation  programmer analysts  programmer productivity  programming assignments  programming languages  programming systems  quality product  roles and responsibilities  senior software  software application programs  software development  software engineer  software specifications  software systems  software tools  specification sheets  spreadsheet  standard development  statistical principles  stay organized  system performance  systems communications  team expert  technical knowledge  technical manager  technical references  technical skills  technical support staff  think outside the box  typical uses  upper management  usability issues  word processor  writing program  writing proposals  written communication
 Technorati (All Links are external): assists  automation  changing technologies  client databases  client interactions  client server programming  co workers  communication ability  communication skills  communications protocols  compiler versions  computer languages  computer logic  computer program design  computer programs  computing environment  computing tools  current systems  data structures  database level  database tables  database vendor  debug  debugging  design coordinate  designing solutions  determinations  development tools  difficulty  distributed computing environment  diverse group  document code  dynamic work environment  efficiency  email  encryption  environment concepts  expert knowledge  file compression software  flow charting  functional specifications  future development  hardware expert  hardware platforms  incidental  information processing  integrating new technologies  job description  junior programmers  legacy code  level programmers  live software  long range planning  management  management design  management team  material specification  measuring instruments  necessary records  network failures  networking technologies  new programs  new projects  operating systems  operating systems software  performance considerations  performance diagnosis  populations  positive attitude  professional peers  professional skill development  professional staff  program documentation  programmer analysts  programmer productivity  programming assignments  programming languages  programming systems  quality product  roles and responsibilities  senior software  software application programs  software development  software engineer  software specifications  software systems  software tools  specification sheets  spreadsheet  standard development  statistical principles  stay organized  system performance  systems communications  team expert  technical knowledge  technical manager  technical references  technical skills  technical support staff  think outside the box  typical uses  upper management  usability issues  word processor  writing program  writing proposals  written communication  business  it
 
Digg  del.icio.us  StumbleUpon  Technorati  Reddit This blog-entry is protected by a digital fingerprint:785273ed81985582c8a1be62f78c9459
 
  • Frank Kanu on Tuesday, October 19th, 2004 @ 07:57
  • Filed under Business, IT


You can follow responses to this entry through the RSS 2.0 feed.

Readers, who enjoyed reading this posting, also read:
  • What is the most important skill for a software engineer:
  • My 14 Year Old Son Can Do That!
  • Stables or just cubicles?
  • software engineering?
  • bad software...?

Because I value your thoughtful opinions, I encourage you to add them.

Please leave your Response right here:




XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>



Please do not be offended if I edit your response for clarity or to keep out questionable matters, however, and I may even delete off-topic responses.

Archives and Links




« couch potato?     Coding Error Shuts Down PayPal »


  • Tags
    • blog
      confucius
      decisions
      e book
      education
      failure
      few days
      followers
      job
      kanu
      leader
      leaders
      leadership skills
      love
      mail
      manager
      managers
      mistakes
      money
      president bush
      programmers
      questions
      start leading
      stop telling
      success

    • Tags sorted alphabetically
    • Tags sorted numerically
  • Categories
    • Business
      • Case Studies
      • Negotiations
    • Cooking
    • Definitions
    • Ethics
    • Events
    • Frank Kanu
    • General
      • Daily Question
      • Quote of the Day
      • Weekly Poll
    • IT
      • Code review
    • Leadership
    • Management
      • Teams
    • Motivation
    • Politics
    • Something funny
    • Stop Telling… Start Leading!
  • Random Posts
    • - Customers? Gee, who needs them anyway!
    • - “Know Thyself”
    • - Software Evaluations

    • blogmap
    • More about Frank
  • Links
    • Frank Kanu's Books
    • - Andy Coote
    • - Andy Wibbels
    • - Billy McDermott*s Blog
    • - Blogcritics
    • - dandrea projetos
    • - David Intersimone “David I”
    • - Derek Jones
    • - Develop Your Vision
    • - enhance your leadership skills
    • - Forbes.com
    • - Frank Kanu
    • - Frank Kanu’s article archive
    • - Genius One
    • - Handelsblatt
    • - Karel’s Legal Blog
    • - Managing Leadership
    • - New York Nitty-Gritty
    • - News for nerds, stuff that matters
    • - Philip Greenspun’s Weblog
    • - Practical Developmental Ideas
    • - Practical Solutions to Business Puzzles
    • - Recipes
    • - Rick Cooper, The PDA Pro
    • - Roberta Pili
    • - Sacred Cow Dung
    • - Savvy Intrapreneur
    • - Scrapbooker for hire
    • - Scrapbooking 4 others
    • - seth godin’s blog
    • - stop telling… start leading!
    • - The Art of Managing People by Asking Questions
    • - The Washington Post
    • - TomPeters!
  • RSS Feed
    • Syndicate using RSS
    • The latest comments to all posts in RSS
  • Archives/Calendar
    • yearly archives
    • monthly archives
    • weekly archives
    • daily archives
    December 2008
    M T W T F S S
    « Nov    
    1234567
    891011121314
    15161718192021
    22232425262728
    293031  
  • Blog Of The Day Awards Winner

If not otherwise stated - all postings © Frank D. Kanu. All rights reserved.

This blog is designed to provide accurate and authoritative information in regard to the subject matter covered.
If legal advice or other expert assistance is required, the services of a competent professional should be sought.



Genius One Inc. · USA
Fax: (509) 463-0129 · E-mail:
info@GeniusOne.com

 


Privacy Statement   Sitemap

 
Copyright © 2000-2008 Genius One Inc.
All rights reserved.
Reproduction or use in whole or part in any form or medium without written permission of Genius One Inc. is prohibited.
If parts or any part of these WebPages is judicially determined to be invalid, that invalidity will not affect the remaining part of these Pages.