Hello, dear guests of the portal of the Moscow Instrument-Making College of the Russian Economic University named after G.V. Plekhanov!

I am glad to welcome you to the specialty 09.02.03 "Programming in computer systems Oh". This direction trains highly qualified specialists in the most demanded specialty, which allows you to get a promising job, and, if you wish, to stand at the origins of the development of the IT sphere. In the cycle of professional disciplines, students study computer maintenance and repair, database and network administration, security information systems, diagnostics and system Programming, web design and graphic modeling of objects. They are taught to develop and integrate modules software, administer databases, maintain software. The main thing for them is to master everything related to the provision of computer systems - mathematical, informational, technical, organizational.


Studied software products:
1 Pascal
2.Cisco
3.C/C++
4. Delphi
5 Java
6.C#
7. SQL Server
8. My Sql
9.1C: Enterprise
10. Photoshop
11. adobe flash
12.Cisco essential

Technicians-programmers work in computer centers, IT companies, banks, educational institutions. They are engaged in software development, troubleshooting of computer equipment, equipment adjustment, user training, as well as updating databases, software used, monitoring license agreements related to the operation of programs, develop instructions for working with computer programs, draw up technical documentation. For more than 70 years, our educational institution has been producing students with a quality education. Creating this portal, the priority areas for us were: convenience, information content, conciseness for site users. The site provides up-to-date information for students and their parents: a calendar of events, student life, news feed of department No. 3.

Nowadays, all companies - from small to large size need information technology in order to compete in the context of the widespread use of high-tech solutions. However, the specifics of IT tools and methods of their implementation, operation and maintenance, depending on the scale of the enterprise, can differ significantly. If the necessary set of IT tools in the case of a company with a staff of up to 50 people can be limited to only one automated accounting system and one system administrator of medium qualification, then a large organization needs an integrated approach to creating an IT infrastructure, which includes the creation of an IT department. So what is the IT department for? Starting to answer this question, it is worth listing some of the nuances of working with information flows in the enterprise and consider them:

  • One person (and in some cases even ten) is not enough to provide the necessary amount of work of one or another profile related to IT;
  • No person can be a highly qualified specialist in all areas of IT at once. Therefore, the IT staff of the company should consist of specialists of various profiles;
  • Each specialist is busy performing only his own task, the implementation of which is necessary insofar as it is necessary to complete the tasks assigned to the IT infrastructure of the enterprise as a whole;
  • As follows from the above, the work of several people performing miscellaneous work must be coordinated. That involves the involvement of an IT manager - an IT director who is able to understand both the activities of each of the specialists and the goals and objectives of the IT infrastructure within the framework of the enterprise.

Consideration of these nuances inevitably leads to the conclusion that the IT department should be a system, and not just a set of tools and a company of specialists working together in different areas. Thus, the IT department of a company is a set of interacting IT tools and IT specialists, the goals of which are:

  • Provision of information technologies;
  • Improving the efficiency of the company by optimizing information flows.

The IT department of the company performs tasks such as:

  • Implementation of IT projects;
  • Ensuring the operability of information systems;
  • Providing the management of the company with information about new IT opportunities and technologies for managing them;
  • Office work of the department, maintaining the IT budget, accounting for IT assets, providing IT personnel.

As for the staffing of the IT department, in most cases it includes employees of the following profiles:

The networking specialist identifies problems that arise during the operation of the network; analyzes user requirements; coordinates the process of adjustment and support of network equipment; ensures compatibility of software and hardware networking; prepares the budget in the accountable area and ensures effective use resources; supervises less qualified technical staff.

The system analyst analyzes user requirements to determine the configuration of the software and hardware; trains technical specifications, technical reports software and hardware support; coordinates the process of testing and commissioning of IT software; analyzes complex programming issues regarding code modification already existing programs and creating code for new programs.

The programmer solves complex programming issues related to modernization, modification of existing code or creation of new code; prepares graphs and diagrams of the workflow; establishes the sequence of operations for data entry and computer processing; controls the testing and debugging of software.

System Administrator installs software and hardware; monitors and optimizes work operating systems computer technology; identifies problems in the software; analyzes user requirements, evaluates additional features to improve the performance of the software.

The User Support Specialist is responsible for installing and performing software and hardware diagnostics; provides technical support and advice to end users; responsible for arranging repairs computer technology; provides Supplies for computer and office equipment; advises users on technical issues.

The head of the IT department manages any activity related to the maintenance of computer equipment; controls the process of selection, installation, support of software and hardware; controls the company's relations with partners providing services in the field of IT; manages the process of selection, training of specialists of the department, analyzes the results of their activities; manages the training process for employees.

By the beginning of the 21st century, the world of information technology has become unthinkable without such a phenomenon as the global network "Internet". On the this moment The Internet in business is not only a means of communication between geographically remote divisions or different firms, but also a means by which you can explore new markets by presenting potential clients your special kind of business card - a website.

Depending on the type of website (business card site, informational portal, an interactive portal with an online store) the number of required specialists can vary significantly. In the most difficult case, the IT department should have:

  • PHP/ASP/Perl/JavaScript programmer with knowledge of database management language SQL data;
  • HTML/CSS/Flash coder;
  • A web designer working at a professional level with such bitmap and vector graphics, how Adobe Photoshop, Corel Draw;
  • Content manager that selects, edits text and graphic information for subsequent posting on the website;
  • Web services system administrator (Apache, cron, sshd, ftpd, sendmail, mysql);
  • Specialist in attracting site visitors (SEO, registration in thematic directories, ordering advertising and links).

The foregoing leads to the conclusion that the task of creating a large, dynamically developing Internet project that would bring tangible benefits to business is not an easy one. Especially considering that the criteria for the quality of websites are becoming more stringent every year.

A programmer is a very important profession, classified into several types. The functions, rights and obligations of different programmers will be discussed in this article.

What is a programmer?

What does the job description say about the profession? A programmer is a specialist in the field of IT technologies who owns a computer at a professional level and is able to create and use various kinds of computer programs. The representative of the profession in question should be energetic, sociable and set up only positively.

How can such a job be obtained? The programmer, prescribes the instruction, must have a higher technical education. Only in this case, he can be appointed to a position by order of the general director of the IT department.

The programmer must have excellent knowledge of:

  • about labor legislation;
  • on various kinds of decrees, acts and norms concerning professional activity programmer
  • on labor rules and regulations;
  • about safety.

Rights and obligations of a programmer

Like any other worker, a programmer has certain rights and functions.

What rights does the job description prescribe?

  • The programmer has the right to identify and eliminate various causes and factors that hinder effective work.
  • The programmer has the right to send to the management of the enterprise various kinds of wishes, requests and suggestions regarding the improvement of the efficiency of labor activity.

The rights of a representative of the profession in question, although they fit in just two points, nevertheless, are quite fair and disclosed. And what are the duties of an IT specialist, what does the job description prescribe about them? The programmer, according to the standards, is endowed with the following functions:

  • development of programs and their testing;
  • development of a methodology for solving the problem;
  • determination of the necessary information;
  • determination of the content and volume of data;
  • starting and stopping programs;
  • ensuring competent operation of programs;
  • preparation of equipment for operation, repair of some equipment.

Above, only the most basic functions of the specialist in question were named. Of course, there could be many more.

Who is a software engineer?

Job description of a software engineer prescribes that the specialist in question is appointed by order of the general director.

He reports either to the head of the department, or in order to get the position of a software engineer, you must have a higher technical education and work experience of at least one year.

The specialist in question must have excellent knowledge of the most different types software, principles and technologies and methods of information processing and coding. It is desirable that the specialist also has an idea about formalized languages ​​in programming, as well as about the procedure and methods for formalizing documentation.

A software engineer can be guided only by the charter of the enterprise, its regulations and legislative acts of the Russian Federation.

Rights, duties and responsibilities of a software engineer

The job description of a software engineer prescribes the following rights for an employee:


And what can be found about the duties of the specialist in question? Here's what the job description says:

  • a programmer-engineer is obliged to develop programs and test them on the basis of mathematical analysis;
  • is obliged to develop methods for solving problems;
  • must select the programming language;
  • must determine the information to be processed;
  • is obliged to check the software product before use.

Depending on the location where the software engineer works, his work functions may vary slightly.

It is also worth noting that a software engineer is responsible for the incorrect performance of his work activities, for negligence, for violation of discipline and safety.

About the lead programmer and his responsibilities

The lead programmer is appointed by the general director, and reports to the technical director. Naturally, the lead programmer must have a higher technical education.

The leading programmer is distinguished by his computer skills at a professional level and the ability to develop complex special programs. Nothing characterizes a lead programmer better than listing their job responsibilities. So, here are the functions that are within the competence of the lead programmer:

  • setting tasks for programmers and monitoring their implementation;
  • development of tasks for the department;
  • checking programs for compliance with standards;
  • assistance to programmers in the department;
  • conducting an inventory;
  • control of the property of the enterprise;
  • informing the authorities about the existing problems.

Thus, the name of the profession speaks for itself. In fact, the lead programmer is a kind of "headman" in the department.

On the responsibility and rights of the lead programmer

The job description of the lead programmer prescribes the following rights for the lead programmer:


Thus, the lead programmer has much more rights than the ordinary one. But the more rights, the more responsibility. Thus, the specialist in question is responsible for:

  • failure to perform or poor performance of their functions;
  • non-fulfillment or poor-quality fulfillment of functions by the department;
  • providing false information about the work of the department;
  • disclosure of trade secrets;
  • failure to follow the orders of superiors.

The specialist in question has a very responsible job. A programmer who is a leader is a focused person who is attentive to his work.

Programmer in a budgetary institution and his responsibilities

It should be said right away that the work of the specialist in question in a budgetary institution is not much different from work in a commercial institution.

So, the job description of a programmer of a budgetary institution prescribes that the employee is also appointed by the director of the institution and reports to him. The main functions and responsibilities are forecasting, analysis and planning. As an example, consider a school programmer.

The job descriptions of a programmer at school can be different, as they are edited directly at the educational institution itself. Nevertheless, some general provisions can be distinguished.

The school programmer must:

  • analyze the state of the school computer park;
  • monitor the state of the computer park;
  • predict trends in the development of school technology;
  • organize the use of technology;
  • maintain documentation on the state of the computer park.

It is worth noting that the school programmer has enormous responsibilities. Especially if it is one for the whole institution.

On the responsibility and rights of a programmer in a budgetary institution

Although the job descriptions of a programmer in an institution may vary, one thing is for sure: the responsibility for a programmer at school or elsewhere always falls on a huge one.

It is worth noting the vagueness of the wording available in the job description:

  • liability for involvement in the violation of the [educational] process;
  • responsibility for causing damage to the institution;
  • for failure to perform duties, poor-quality performance of duties, etc.

What rights are assigned to a programmer? We can distinguish the most basic:

  • the right to professional development;
  • the right to make suggestions for improving the work;
  • the right to request the necessary documents from the authorities;
  • the right to negotiate with employees of the institution (school), etc.

1. Weekly seminar of the development department.

Once a week, programmers meet and briefly discuss their tasks, namely those tasks for which there is a problem, on which, for example, a programmer has been working for more than three days. Make a list of such tasks.

The leader of the meeting conducts a brainstorm on each task with the group, work on each task for no more than 5-10 minutes, then the person, the owner of the task, writes down such ideas (thoughts) and subsequently analyzes them independently and makes a decision. Such a short seminar should be held in a relaxed atmosphere, but nevertheless in the office.

Result: the owner of the task receives new views on his task, there is an exchange of knowledge and information about tasks in work and problematic tasks, the elimination and absence of "hanging" tasks and projects.

2. Group placement of the team.

A team of programmers according to the agile development methodology (SCRUM) should be together. Result: exchange of experience, quick solution of problematic long-term tasks, interchangeability of employees, team cohesion in large projects.

3. Access to 1c servers and database servers.

Direct access to database administration, up to limited database management rights (database management servers) or direct communication with database administrators (phone, corporate messenger).

Result: Reduction of time in case of problems with the database at the sql level and 1s8 server clusters, elimination of time delay problems, as a result, acceleration of the overall process of solving technical problems and projects.

Note. As a rule, an experienced programmer is familiar with the 1s8 client-server structure, can manage the 1s8 server, at the user level with the database server.

4. Teaching the basic skills of configuring technical support specialists.

Since the technical support service also performs the role of testing products (results) of development, implement training for support service specialists in configuring in the 1s8 system, the structure of objects, basic principles and programming skills, allow access to configurations, view only.

5. Pair programming.

It is possible to consider the option of pair programming again from the SCRAM methodology.

Result: better reliable code, faster completion of individual tasks, iterations of the project and the project as a whole, an increase in the optimality of tasks, projects in terms of performance and speed.

6. Performance optimization.

When implementing tasks, projects, evaluate the optimality of the code, conduct load testing before implementation. (this applies to large projects and tasks).

Also, conduct a survey of users to identify bottlenecks in existing accounting systems and regularly optimize, identifying problematic code, for example, using 1C Performance Management Center.

Result: prevention of performance problems and, as a result, acceleration of the work of users, elimination of possible downtime.

7. Open management policy for employees of the accounting systems development department.

To convey to each employee of the development department the structure of accounting systems, their interconnections and his role in this structure, or to determine the nodes (configurations, databases) for which the employee is responsible.

8. Combining all nodes of the company's IT structure with a single bus.

Organize data exchange between nodes (bases, accounting systems, etc.) of the structure using a single interaction interface using, for example IBM WebSphere Message Broker from the line IBM products WebSphere MQ.

9. Introduce Human Resource Management System

  1. Card for each employee.
  2. Dynamics of development.
  3. Employee training and development schedule. Non-developing employees are not needed by the company.

Professional orientation of the employee. priority directions.

  1. Periodic testing and advanced training of employees.
  2. Loading a team and an individual employee.

10. Introduce a system for task accounting

  1. Track the progress of completing tasks.
  2. The speed of the team of programmers, analysts, technical support.
  3. The speed of the development department, the efficiency of employees, problematic tasks, the use of such analytics for planning.
  4. Forecasting the capacity / resource load of the work of teams and the development department as a whole
  5. Revealing the effectiveness of employees
  6. Input data for the human resource management system.

11. Profiling employees, project teams.

  1. Identification of the effectiveness of employees, programmers in certain industries or areas of development, redistribution of tasks between programmers, creation of specialized teams, the specialized team works enthusiastically more efficiently.
  2. Conducting a survey or testing of programmers on the subject of what he worked with, what he likes more, to determine the direction, preferences of programmers.

12. Test Driven Development.

  1. To convey to developers the methodology for developing TDD, test-driven development. (how it should work - development - refactoring)

13. Introduction to the company's local wiki.

  1. Information exchange.
  2. Instructions, corporate documents, features of the systems, the specifics of the operation of nodes (1s, not 1s), modules.
  3. It will simplify the exchange of information between existing employees and significantly speed up the speed of entry into a full-fledged working mode of work for new employees, the time of experienced employees is not spent on training new ones.
  4. Easy addition of new information, simple search.
  5. Reducing the risk of a sudden departure of a valuable employee, provided that ongoing projects and tasks are documented.
  6. Perhaps create a corporate wiki that will be available from the corporate website

14. Training of support service specialists in basic programming skills, certification of specialists