Hiring guide for DRAKON-COBOL Engineers

DRAKON-COBOL Developer Hiring Guide

DRAKON-COBOL is a programming language that combines the DRAKON visual language and COBOL, a vintage high-level programming language. DRAKON is designed to represent complex logic visually in an easy-to-understand manner, making it ideal for designing algorithms and understanding program flow. On the other hand, COBOL (Common Business-Oriented Language) has been widely used for business applications since its development in the late 1950s. The combination of these two languages allows developers to create robust business applications with clear and understandable logic diagrams. This can be particularly useful when maintaining or updating legacy systems written in COBOL as it provides a clear visualization of how different components interact with each other.

Ask the right questions secure the right DRAKON-COBOL talent among an increasingly shrinking pool of talent.

First 20 minutes

General DRAKON-COBOL app knowledge and experience

The first 20 minutes of the interview should seek to understand the candidate's general background in DRAKON-COBOL application development, including their experience with various programming languages, databases, and their approach to designing scalable and maintainable systems.

How would you define DRAKON in your own words?
DRAKON is a visual language for specifications from the Russian space program. It is designed to represent complex logic and algorithms in a way that is easy to understand and error-free.
What are the key features of COBOL?
COBOL is a high-level programming language that is primarily used in business applications. Its key features include strong data typing, file handling capabilities, and support for structured programming.
Describe the difference between DRAKON and traditional flowcharts.
DRAKON is designed to be more readable and understandable than traditional flowcharts. It uses a vertical layout and strict rules for diagram construction to minimize errors and confusion.
How would you handle a situation where a DRAKON diagram is becoming too complex?
If a DRAKON diagram is becoming too complex, it may be a sign that the underlying logic is too complicated and needs to be simplified. I would try to break down the problem into smaller, more manageable parts and create separate diagrams for each part.
What are the advantages of using DRAKON-COBOL over other programming languages?
DRAKON-COBOL combines the readability and error-free design of DRAKON with the robustness and business-oriented features of COBOL. This makes it a powerful tool for developing complex business applications.
The hiring guide has been successfully sent to your email address.
Oops! Something went wrong while submitting the form.

What you’re looking for early on

Has the candidate demonstrated a solid understanding of DRAKON-COBOL syntax and semantics?
Has the candidate shown previous experience with legacy systems?
Does the candidate have an ability to debug and solve problems in DRAKON-COBOL?
Have they given examples of how they have used DRAKON-COBOL in a real-world situation?

Next 20 minutes

Specific DRAKON-COBOL development questions

The next 20 minutes of the interview should focus on the candidate's expertise with specific backend frameworks, their understanding of RESTful APIs, and their experience in handling data storage and retrieval efficiently.

Describe the difference between static and dynamic calls in COBOL.
In a static call, the called program is a part of the calling program and stays in memory for the duration of the session. In a dynamic call, the called program is loaded into memory only when the program is called and is removed from memory after the call.
How would you debug a complex DRAKON-COBOL program?
I would start by tracing the execution of the program using a debugger. I would also use the DRAKON diagram to understand the logic of the program and identify potential areas where errors could occur.
What are the different types of data divisions in COBOL?
There are four types of data divisions in COBOL: File Section, Working-Storage Section, Local-Storage Section, and Linkage Section. Each serves a different purpose in the program.
Describe the difference between a DRAKON 'Action' and 'Question'.
In DRAKON, an 'Action' represents a step in the algorithm that performs a specific task, while a 'Question' represents a decision point in the algorithm where the flow of control can branch in different directions based on the answer.
How would you optimize a COBOL program for performance?
There are several ways to optimize a COBOL program for performance, such as minimizing I/O operations, using efficient data structures, and optimizing the use of CPU and memory resources.
The hiring guide has been successfully sent to your email address.
Oops! Something went wrong while submitting the form.

The ideal back-end app developer

What you’re looking to see on the DRAKON-COBOL engineer at this point.

At this point, a skilled DRAKON-COBOL engineer should demonstrate strong problem-solving abilities, proficiency in DRAKON-COBOL programming language, and knowledge of software development methodologies. Red flags include lack of hands-on experience, inability to articulate complex concepts, or unfamiliarity with standard coding practices.

Digging deeper

Code questions

These will help you see the candidate's real-world development capabilities with DRAKON-COBOL.

What does this simple COBOL code do?
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
PROCEDURE DIVISION.
DISPLAY 'Hello, World!'.
STOP RUN.
This is a simple COBOL program that prints 'Hello, World!' to the console.
What will be the output of this COBOL code?
IDENTIFICATION DIVISION.
PROGRAM-ID. ADDNUM.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NUM1 PIC 9 VALUE 5.
01 NUM2 PIC 9 VALUE 7.
01 SUM PIC 9.
PROCEDURE DIVISION.
ADD NUM1, NUM2 GIVING SUM.
DISPLAY SUM.
STOP RUN.
This COBOL program adds two numbers, 5 and 7, and displays the result. The output will be 12.
What does this COBOL code do with the array?
IDENTIFICATION DIVISION.
PROGRAM-ID. ARR.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 ARR-TABLE.
05 ARR-ITEM PIC 9(3) OCCURS 5 TIMES.
PROCEDURE DIVISION.
PERFORM VARYING ARR-ITEM FROM 1 BY 1 UNTIL ARR-ITEM > 5
DISPLAY ARR-ITEM
END-PERFORM.
STOP RUN.
This COBOL program creates an array of 5 elements and displays each element. However, it will result in an error because the array elements are not initialized.
What does this COBOL code do related to threading?
IDENTIFICATION DIVISION.
PROGRAM-ID. THREAD.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SPECIAL-NAMES.
C01 IS CRITICAL-SECTION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 SHARED-DATA PIC 9(3).
PROCEDURE DIVISION.
ENTER CRITICAL-SECTION.
ADD 1 TO SHARED-DATA.
EXIT CRITICAL-SECTION.
STOP RUN.
This COBOL program increments a shared data item in a thread-safe manner by using a critical section to ensure that only one thread can execute the code at a time.

Wrap-up questions

Final candidate for DRAKON-COBOL Developer role questions

The final few questions should evaluate the candidate's teamwork, communication, and problem-solving skills. Additionally, assess their knowledge of microservices architecture, serverless computing, and how they handle DRAKON-COBOL application deployments. Inquire about their experience in handling system failures and their approach to debugging and troubleshooting.

What are the different types of file organization in COBOL?
COBOL supports three types of file organization: Sequential, Indexed, and Relative. Each type has its own advantages and is suitable for different kinds of applications.
Describe the difference between 'Perform Until' and 'Perform Varying' in COBOL.
'Perform Until' is used to execute a set of statements until a certain condition is met. 'Perform Varying' is used to execute a set of statements for a range of values of a variable.
How would you handle errors in a DRAKON-COBOL program?
I would use exception handling mechanisms provided by COBOL to catch and handle errors. I would also use the DRAKON diagram to understand the flow of control and identify potential error conditions.

DRAKON-COBOL application related

Product Perfect's DRAKON-COBOL development capabilities

Beyond hiring for your DRAKON-COBOL engineering team, you may be in the market for additional help. Product Perfect provides seasoned expertise in DRAKON-COBOL projects, and can engage in multiple capacities.