Programming/Software Engineering Job Descriptions

The latest comprehensive programming/software engineering job descriptions.

.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. Requires a bachelor’s degree in a related area and 2-5 years of relevant experience.

Applications Engineer

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 or department head, though some ingenuity and flexibility is required. May require a bachelor’s degree in area of specialty and 0-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

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 require a bachelor’s degree in a related area and 0-10 years of relevant experience.

Fullstack Developer

Responsible for designing and developing both front and back-end website architecture. Creates and optimizes new web design features while ensuring website or application is responsive and interactive. Proficient in multiple server-side languages and frameworks. Requires a bachelor’s degree in computer science or related area.

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 1-6 years of relevant experience.

Mainframe Programmer

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 0-10 years of relevant experience.

Programmer

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 0-10 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. 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 Engineer

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 or department head. Significant ingenuity and flexibility is expected. Requires a bachelor’s degree in a related area and 0-10 years of relevant experience.

Software Development Engineer in Test

A Software Development Engineer in Test (SDET) is a developer with the primary responsibility of writing frameworks and tools to test products. SDETs are able to understand software internals, debug code, automate repetitive tasks, and implement new tools and frameworks needed to streamline the quality process. Often working with Software Development Engineers and Quality Assurance Engineers to understand project features, review technical designs, and implement automated test tools that help deliver quality features with efficiency.

Software Support Engineer

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 0-6 years of relevant experience.