public GuestDeveloper(
            int userId,
            string firstName,
            string lastName,
            Uri photoUri,
            DateTime registrationDate,
            Uri vkProfileUri,
            int? studentAccessionYear,
            string studyingDirection,
            string instituteName,
            string specialization,
            string role,
            DeveloperPageProjectPreview[] projects)
        {
            Require.Positive(userId, nameof(userId));
            Require.NotEmpty(firstName, nameof(firstName));
            Require.NotEmpty(lastName, nameof(lastName));

            UserId = userId;
            FirstName = firstName;
            LastName = lastName;
            PhotoUri = photoUri;
            RegistrationDate = registrationDate;
            VkProfileUri = vkProfileUri;
            StudentAccessionYear = studentAccessionYear;
            StudyingDirection = studyingDirection;
            InstituteName = instituteName;
            Specialization = specialization;
            Role = role;
            Projects = projects;
        }
        public Developer(
            int userId,
            string firstName,
            string lastName,
            string email,
            int redmineUserId,
            int gitlabUserId,
            ConfirmationStatus confirmationStatus,
            Uri photoUri,
            DateTime registrationDate,
            Uri vkProfileUri,
            string phoneNumber,
            int? studentAccessionYear,
            string studyingDirection,
            string instituteName,
            string specialization,
            string role,
            DeveloperPageProjectPreview[] projects)
        {
            Require.Positive(userId, nameof(userId));
            Require.NotEmpty(firstName, nameof(firstName));
            Require.NotEmpty(lastName, nameof(lastName));
            Require.NotEmpty(email, nameof(email));

            UserId = userId;
            FirstName = firstName;
            LastName = lastName;
            Email = email;
            RedmineUserId = redmineUserId;
            GitlabUserId = gitlabUserId;
            ConfirmationStatus = confirmationStatus;
            PhotoUri = photoUri;
            RegistrationDate = registrationDate;
            VkProfileUri = vkProfileUri;
            PhoneNumber = phoneNumber;
            StudentAccessionYear = studentAccessionYear;
            StudyingDirection = studyingDirection;
            InstituteName = instituteName;
            Specialization = specialization;
            Role = role;
            Projects = projects ?? EmptyArray.Get<DeveloperPageProjectPreview>();
        }