Programming and Software Engineering

Below are the typical Programming and Software Engineering job descriptions staffed by Modis. View our other positions by visiting Job Categories or to inquire about a specific need, fill our brief contact form.

.NET Architect

Develops and implements approach to new frameworks, including architecture blueprints and roadmaps, based on interdepartmental goals. Ensures project compliance with applications’ architectural roadmaps, principles, standards and reference architectures. Tests and maintains applications to work out bugs. Requires a bachelor’s degree in area of specialty and 5 years of relevant experience.

.NET Developer

Builds, designs and implements software packages for websites. Troubleshoots and debugs software code. Has knowledge of SQL, C++, HTML, CGI, JavaScript and other concepts. Relies on limited knowledge and professional discretion to achieve goals. Works under general supervision and typically reports to a project leader. Some ingenuity and flexibility required. May require a bachelor’s degree in a related area and at least 2 years of relevant experience.

Senior .NET Developer

Responsible for full software development life cycle including new development, design and troubleshooting. Uses customer needs and industry trends to continuously design new software features. Troubleshoots and supports system and application problems. Usually mentors team on coding practices and processes. Requires a bachelor’s degree in area of specialty and a minimum of 5 years of relevant experience.

Applications Development Manager

Builds applications to meet business requirements and oversees a team of analysts or developers. Assesses existing applications and keeps abreast of industry standards and best practices. Determines technical changes, schedules projects and oversees timelines. Implements and monitors quality standards. Relies on extensive knowledge and professional discretion to plan and achieve goals. Manages others. Significant ingenuity and flexibility is expected. Usually reports to a department head. Requires a bachelor’s degree in a related area and at least 7 years of application development experience.

Applications Engineer I

Supports the design, development and modification of applications and programs. Evaluates company products and competing equipment on the basis of ability and capacity. Acts as the technical liaison to the sales team by providing capability reports. Relies on established guidelines and instructions to perform daily job functions. Works under immediate supervision. May require a bachelor’s degree in area of specialty and 0–2 years of relevant experience.

Applications Engineer II

Supports the design, development and modification of applications and programs. Evaluates company products and competing equipment on the basis of ability and capacity. Acts as the technical liaison to the sales team by providing capability reports. Relies on limited knowledge and professional discretion to achieve goals. Works under general supervision and usually reports to a supervisor, though some ingenuity and flexibility is required. May require a bachelor’s degree in area of specialty and 2–4 years of relevant experience.

Applications Engineer III

Supports the design, development and modification of applications and programs. Evaluates company products and competing equipment on the basis of ability and capacity. Acts as the technical liaison to the sales team by providing capability reports. Relies on limited knowledge and professional discretion to achieve goals. Works under general supervision and usually reports to a supervisor, though some ingenuity and flexibility is required. May require a bachelor’s degree in area of specialty and 4–6 years of relevant experience.

Applications Engineer IV

Supports the design, development and modification of applications and programs. Evaluates company products and competing equipment on the basis of ability and capacity. Acts as the technical liaison to the sales team by providing capability reports. Relies on knowledge and professional discretion to achieve goals. Usually reports to a supervisor. Significant ingenuity and flexibility is expected. May manage others. May require a bachelor’s degree in area of specialty and 6–8 years of relevant experience.

Applications Engineer V

Supports the design, development and modification of applications and programs. Evaluates company products and competing equipment on the basis of ability and capacity. Acts as the technical liaison to the sales team by providing capability reports. Relies on significant knowledge and professional discretion to achieve goals. Usually reports to a department head. Significant ingenuity and flexibility is expected. Manages others. May require a bachelor’s degree in area of specialty and 8–10 years of relevant experience.

Applications Systems Architect

Leads the development of system design and execution. Documents development requirements for database, applications and operation system environment. Consults with end users to test and debug applications to meet client needs. Serves as expert for all aspects of application design and development and may lead training for IT staff. Relies on extensive knowledge and professional discretion to achieve goals. May offer consultation to senior leadership and is considered to be the top-level expert in this field. Usually reports to a department head. Requires a bachelor’s degree and may be expected to have an advanced degree in area of specialty and at least 5 years of relevant experience.

Client/Server Programmer I

Supports client/server software applications by reviewing, assessing and modifying programming systems. Relies on established guidelines and instructions to perform daily job functions. Works under general supervision. May require a bachelor’s degree in a related area and 0–2 years of relevant experience.

Client/Server Programmer II

Supports client/server software applications by reviewing, assessing and modifying programming systems. Familiar with relational database concepts and client-server concepts. Relies on limited knowledge and professional discretion to achieve goals. Works under general supervision and usually reports to a project leader or manager, though some ingenuity and flexibility is required. May require a bachelor’s degree in a related area and 2–4 years of relevant experience.

Client/Server Programmer III

Supports client/server software applications by reviewing, assessing and modifying programming systems. Familiar with relational database concepts and client-server concepts. Relies on knowledge and professional discretion to achieve goals. Usually reports to a project leader or manager. Significant ingenuity and flexibility is expected. May manage others. May require a bachelor’s degree in a related area and 4–6 years of relevant experience.

Client/Server Programmer IV

Supports client/server software applications by reviewing, assessing and modifying programming systems. Expertise with relational database concepts and client-server concepts. Relies on extensive knowledge and professional discretion to achieve goals. Usually reports to a department head. Significant ingenuity and flexibility is expected. Manages others. May require a bachelor’s degree in a related area and 6–8 years of relevant experience.

Client/Server Programmer V

Supports client/server software applications by reviewing, assessing and modifying programming systems. Expertise with relational database concepts and client-server concepts. Relies on extensive knowledge and professional discretion to achieve goals. May offer consultation to senior leadership and is considered to be the top-level expert in this field. Usually reports to a department head. Significant ingenuity and flexibility is expected. Manages others. May require a bachelor’s degree in a related area and 8–10 years of relevant experience.

GIS Analyst I

Utilizes Geographic Information System (GIS) techniques to better understand certain variables in a given geographic location. Extracts data from GIS software, performs analysis and offers detailed recommendations based on results. Provides maps and data sets to clients to supplement analysis. Knowledgeable of GIS software and technology. Works in conjunction with CADD drafters and technicians. Relies on established guidelines and instructions to perform daily job functions. Usually reports to a supervisor. Requires a bachelor’s degree in area of specialty and 0–2 years of relevant experience.

GIS Analyst II

Utilizes Geographic Information System (GIS) techniques to better understand certain variables in a given geographic location. Extracts data from GIS software, performs analysis and offers detailed recommendations based on results. Provides maps and data sets to clients to supplement analysis. Knowledgeable of GIS software and technology. Works in conjunction with CADD drafters and technicians. Relies on limited knowledge and professional discretion to achieve goals. Usually reports to a supervisor. Requires a bachelor’s degree in area of specialty and 2–3 years of relevant experience.

GIS Analyst III

Utilizes Geographic Information System (GIS) techniques to better understand certain variables in a given geographic location. Extracts data from GIS software, performs analysis and offers detailed recommendations based on results. Provides maps and data sets to clients to supplement analysis. Knowledgeable of GIS software and technology. Works in conjunction with CADD drafters and technicians. Relies on knowledge and professional discretion to achieve goals. Works under general supervision and usually reports to a supervisor, though some ingenuity and flexibility is required. Requires a bachelor’s degree in area of specialty and 4–6 years of relevant experience.

GIS Analyst IV

Utilizes Geographic Information System techniques to better understand certain variables in a given geographic location. Extracts data from GIS software, performs analysis and offers detailed recommendations based on results. Provides maps and data sets to clients to supplement analysis. Knowledgeable of GIS software and technology. Works in conjunction with CADD drafters and technicians. Relies on extensive knowledge and professional discretion to achieve goals. Usually reports to a department head. May manage others. Significant ingenuity and flexibility is expected. Requires a bachelor’s degree in area of specialty and 7–10 years of relevant experience. Additional certification may be required.

GIS Analyst V

Utilizes Geographic Information System techniques to better understand certain variables in a given geographic location. Extracts data from GIS software, performs analysis and offers detailed recommendations based on results. Provides maps and data sets to clients to supplement analysis. Knowledgeable of GIS software and technology. Works in conjunction with CADD drafters and technicians. Relies on extensive knowledge and professional discretion to achieve goals. Usually reports to a department head. Manages others. Significant ingenuity and flexibility is expected. Requires a bachelor’s degree in area of specialty, at least 10 years of relevant experience and additional certifications.

Java Architect

Designs software to meet business and technical needs. Analyzes application specifications and technology approach to ensure scalability. Engages in day-to-day project tracking to ensure team is meeting technical requirements. Contributes to development of standards and practices for Java development. May manage others. Requires a bachelor’s degree in area of specialty and 7-9 years of relevant experience.

Java Developer

Creates, designs and tests web-based Java applications to support business goals. Performs program coding and testing and addresses technical issues through research, investigation and debugging. Relies on knowledge and professional discretion to achieve goals. A degree of ingenuity and flexibility is required. Usually reports to a supervisor. Requires a bachelor’s degree in area of specialty and 2–4 years of relevant experience.

Junior Java Developer

Designs software solutions for bugs or new requirements. Works with users to establish baselines and define system scope and objectives. Collects, analyzes and summarizes development issues to create remediation steps. Participates in peer code reviews. Provides technical expertise to support other team members. Requires a bachelor’s degree in area of specialty and 1-3 years of relevant experience.

Java Developer, Sr.

Creates, designs and tests web-based Java applications to support business goals. Performs program coding and testing and addresses technical issues through research, investigation and debugging. Relies on extensive knowledge and professional discretion to achieve goals. Significant ingenuity and flexibility is expected. Usually reports to a supervisor. Requires a bachelor’s degree in area of specialty and 4–6 years of relevant experience.

Mainframe Programmer I

Analyzes, designs, develops and tests various components for large-scale mainframe computer systems. Manages online and batch application programs, implements disaster recovery plans and develops specifications and workflows. Relies on established guidelines and instructions to perform daily job functions. Usually reports to a project leader or manager. May require a bachelor’s degree in a related area and 0–2 years of relevant experience.

Mainframe Programmer II

Analyzes, designs, develops and tests various components for large-scale mainframe computer systems. Manages online and batch application programs, implements disaster recovery plans and develops specifications and workflows. Relies on limited knowledge and professional discretion to achieve goals. Works under general supervision and usually reports to a project leader or manager, though some ingenuity and flexibility is required. May require a bachelor’s degree in a related area and 2–4 years of relevant experience.

Mainframe Programmer III

Analyzes, designs, develops and tests various components for large-scale mainframe computer systems. Manages online and batch application programs, implements disaster recovery plans and develops specifications and workflows. Relies on knowledge and professional discretion to achieve goals. Usually reports to a project leader or manager. May manage others. Significant ingenuity and flexibility is expected. May require a bachelor’s degree in a related area and 4–6 years of relevant experience.

Mainframe Programmer IV

Analyzes, designs, develops and tests various components for large-scale mainframe computer systems. Manages online and batch application programs, implements disaster recovery plans and develops specifications and workflows. Relies on extensive knowledge and professional discretion to achieve goals. Usually reports to a department head. Manages others. Significant ingenuity and flexibility is expected. May require a bachelor’s degree in a related area and 6–8 years of relevant experience.

Mainframe Programmer V

Analyzes, designs, develops and tests various components for large-scale mainframe computer systems. Manages online and batch application programs, implements disaster recovery plans and develops specifications and workflows. Relies on extensive knowledge and professional discretion to achieve goals. May offer consultation to senior leadership and is considered to be the top-level expert in this field. Usually reports to a department head. Usually reports to a department head. Manages others. Significant ingenuity and flexibility is expected. May require a bachelor’s degree in a related area and 8–10 years of relevant experience.

Programmer I

Analyzes, designs, develops and tests various programming systems, including encoding, testing, debugging and documenting programs. Relies on established guidelines and instructions to perform daily job functions. Works under immediate supervision. May require an associate’s degree and 0–3 years of relevant experience.

Programmer II

Analyzes, designs, develops and tests various programming systems, including encoding, testing, debugging and documenting programs. Relies on limited knowledge and professional discretion to achieve goals. Works under general supervision and usually reports to a project leader or manager, though some ingenuity and flexibility is required. May require an associate’s degree and 2–5 years of relevant experience.

Programmer III

Analyzes, designs, develops and tests various programming systems, including encoding, testing, debugging and documenting programs. Relies on knowledge and professional discretion to achieve goals. Usually reports to a project leader or manager. Significant ingenuity and flexibility is expected. May require a bachelor’s degree and 4–6 years of relevant experience.

Programmer IV

Analyzes, designs, develops and tests various programming systems, including encoding, testing, debugging and documenting programs. Relies on knowledge and professional discretion to achieve goals. Usually reports to a project leader or manager. May manage others. Significant ingenuity and flexibility is expected. May require a bachelor’s degree and 5–8 years of relevant experience.

Programmer V

Analyzes, designs, develops and tests various programming systems, including encoding, testing, debugging and documenting programs. Relies on significant knowledge and professional discretion to achieve goals. May offer consultation to senior leadership and is considered to be the top-level expert in this field. Usually reports to a department head. Usually reports to a department head. May manage others. Significant ingenuity and flexibility is expected. May require a bachelor’s degree and 8–10 years of relevant experience.

Release Engineer

Manages software builds and releases. Responsible for the design and execution of builds, scripts, installation procedures and systems, including source code control and issue tracking. Works collaboratively with quality assurance team to ensure integrity of final version. Relies on knowledge and professional experience to achieve goals. Usually reports to a supervisor. Requires a bachelor’s degree in a related area and 3–5 years of relevant experience.

Software Architect

Designs and develops new software and revises old software. Determines product requirements and develops high-level architectural specifications with a focus on feasibility, functionality and ease of integration with existing systems. Relies on extensive knowledge and professional discretion to achieve goals. Usually reports to a department head. May lead a team of developers. Usually reports to a department head or senior management. Requires a bachelor’s degree and at least 7 years of relevant experience. An advanced degree in area of specialty may also be required.

Software Architect, Sr.

Designs and develops new software and revises old software. Determines product requirements and develops high-level architectural specifications with a focus on feasibility, functionality and ease of integration with existing systems. Relies on extensive knowledge and professional discretion to achieve goals. May offer consultation to senior leadership and is considered to be the top-level in this field. May lead a team of developers. Usually reports to a department head or senior management. Requires a bachelor’s degree and at least 10 years of relevant experience. An advanced degree in area of specialty may also be required.

Software Engineer I

Creates and designs new software by analyzing, testing, assessing and implementing programming applications. Supports and installs applications and operating system. Assists in the testing process by conducting reviews and analyses, witnessing tests and participating in software certification. Relies on established guidelines and instructions to perform daily job functions. Works under immediate supervision. Requires a bachelor’s degree in a related area and 0–2 years of relevant experience.

Software Engineer II

Creates and designs new software by analyzing, testing, assessing and implementing programming applications. Supports and installs applications and operating system. Assists in the testing process by conducting reviews and analyses, witnessing tests and participating in software certification. Relies on limited knowledge and professional discretion to achieve goals. Works under general supervision and usually reports to a supervisor, though some ingenuity and flexibility is required. Requires a bachelor’s degree in a related area and 2–4 years of relevant experience.

Software Engineer III

Creates and designs new software by analyzing, testing, assessing and implementing programming applications. Supports and installs applications and operating system. Assists in the testing process by conducting reviews and analyses, witnessing tests and participating in software certification. Relies on knowledge and professional discretion to achieve goals. Usually reports to a supervisor. Significant ingenuity and flexibility is expected. Requires a bachelor’s degree in a related area and 4–6 years of relevant experience.

Software Engineer IV

Creates and designs new software by analyzing, testing, assessing and implementing programming applications. Supports and installs applications and operating system. Assists in the testing process by conducting reviews and analyses, witnessing tests and participating in software certification. Relies on knowledge and professional discretion to achieve goals. Usually reports to a department head. Manages others. Significant ingenuity and flexibility is expected. Requires a bachelor’s degree in a related area and 6–8 years of relevant experience.

Software Engineer V

Creates and designs new software by analyzing, testing, assessing and implementing programming applications. Supports and installs applications and operating system. Assists in the testing process by conducting reviews and analyses, witnessing tests and participating in software certification. Relies on extensive knowledge and professional discretion to achieve goals. May offer consultation to senior leadership and is considered to be the top-level in this field. Usually reports to an executive. Manages others. Significant ingenuity and flexibility is expected. Requires a bachelor’s degree in a related area and 8–10 years of relevant experience.

Software Quality Assurance Analyst I

Evaluates and tests software applications for usability and functionality. Responsible for developing and executing tests, writing and maintaining test automation and formulating quality assurance standards. Determines metrics for assessing quality assurance performance. Must have a working knowledge of quality assurance methodologies. Familiar with NT, UNIX and/or Solaris environments. Relies on knowledge and professional discretion to achieve goals. Works under general supervision. Some ingenuity and flexibility is required. Requires a bachelor’s degree and 1–2 years of experience coding in C, C++ and Java.

Software Quality Assurance Analyst II

Evaluates and tests software applications for usability and functionality. Responsible for developing and executing tests, writing and maintaining test automation and formulating quality assurance standards. Determines metrics for assessing quality assurance performance. Must have a working knowledge of quality assurance methodologies. Familiar with NT, UNIX and/or Solaris environments. Relies on knowledge and professional discretion to achieve goals. Usually reports to a supervisor, though some ingenuity and flexibility is required. Requires a bachelor’s degree and 2–4 years of experience coding in C, C++ and Java.

Software Quality Assurance Analyst III

Evaluates and tests software applications for usability and functionality. Responsible for developing and executing tests, writing and maintaining test automation and formulating quality assurance standards. Determines metrics for assessing quality assurance performance. Must have a working knowledge of quality assurance methodologies. Familiar with NT, UNIX and/or Solaris environments. Relies on extensive knowledge and professional discretion to achieve goals. Usually reports to a supervisor, May manage others. Some ingenuity and flexibility is expected. Requires a bachelor’s degree and at least 5 years of experience coding in C, C++ and Java.

Software Support Engineer I

Addresses technical software and setup issues for customers, technicians and engineers. Develops technical solutions and performs troubleshooting activity, when required. Implements workaround procedures when standard methods have failed to ensure issues are addressed as quickly as possible. When necessary, escalates urgent problems to internal resources. Relies on limited knowledge and professional discretion to achieve goals. Works under general supervision and usually reports to a supervisor, though some ingenuity and flexibility is required. Requires a bachelor’s degree in area of specialty and 0–2 years of relevant experience.

Software Support Engineer II

Addresses technical software and setup issues for customers, technicians and engineers. Develops technical solutions and performs troubleshooting activity, when required. Implements workaround procedures when standard methods have failed to ensure issues are addressed as quickly as possible. When necessary, escalates urgent problems to internal resources. Relies on knowledge and professional discretion to achieve goals. Works under general supervision and usually reports to a supervisor, though some ingenuity and flexibility is required. Requires a bachelor’s degree in area of specialty and 2–4 years of relevant experience.

Software Support Engineer III

Addresses technical software and setup issues for customers, technicians and engineers. Develops technical solutions and performs troubleshooting activity, when required. Implements workaround procedures when standard methods have failed to ensure issues are addressed as quickly as possible. When necessary, escalates urgent problems to internal resources. Relies on extensive knowledge and professional discretion to achieve goals. Works under general supervision and usually reports to a supervisor, though some ingenuity and flexibility is required. Requires a bachelor’s degree in area of specialty and 4–6 years of relevant experience.