Difference between revisions of "CNM Website Developer"

From CNM Wiki
Jump to: navigation, search
(Projects of projects)
(Projects of projects)
Line 130: Line 130:
 
: Several projects shall be undertaken in order to develop one website; several projects shall also be undertaken in order to develop each website component. To demonstrate how it may work, let's take the following hypothetical scenarios:
 
: Several projects shall be undertaken in order to develop one website; several projects shall also be undertaken in order to develop each website component. To demonstrate how it may work, let's take the following hypothetical scenarios:
 
:# ''Solution idea project''. Tanya discovered a problem that the landing screen of the kryvi.com website needs some background. Tanya researched the constraints and envisioned some drawing as the solution for that problem. Now, she is undertaking the solution idea project while planning for that drawing to be created. Tanya is not a graphic artist, but she is sketching and describing that drawing in order to help [[CNMCyber Coordinator]]s hire needed designers.
 
:# ''Solution idea project''. Tanya discovered a problem that the landing screen of the kryvi.com website needs some background. Tanya researched the constraints and envisioned some drawing as the solution for that problem. Now, she is undertaking the solution idea project while planning for that drawing to be created. Tanya is not a graphic artist, but she is sketching and describing that drawing in order to help [[CNMCyber Coordinator]]s hire needed designers.
:# ''Solution development project''. Sonia is a graphic artist and is looking for opportunities to work as such. While serving as the ''Dev'', she discovered [[CNMCyber]]'s need to have a drawing for their kryvi.com website's landing screen. Sonia carefully reviewed available sketches and descriptions. To research the constraints, Sonia attended a [[Careerprise conference]]. She was directed to the [[standing operating procedure]] ([[standing operating procedure|SOP]]) that described CNMCyber's policies towards drawings. Particularly, she found out that the drawings shall be submitted to [[CNM Repo]] in the [[SVG]] format. Then, Sonia envisioned how she would draw the solution and submit it as a deliverable and, particularly, estimated her time commitment. After that, Sonia planned for her drawing to be created. Sonia proposed her plan to [[CNMCyber Coordinator]]s and was hired as a [[Careerprise contractor]]. Now, Sonia undertaking the solution development project while creating the drawing in order to deliver it to [[CNMCyber Coordinator]]s.
+
:# ''Solution development project''. Sonia is a graphic artist and is looking for opportunities to work as such. While serving as the ''Dev'', she discovered [[CNMCyber]]'s need to have a drawing for their kryvi.com website's landing screen. Sonia carefully reviewed available sketches and descriptions. To research the constraints, Sonia attended a [[Careerprise conference]]. She was directed to the [[standing operating procedure]] ([[standing operating procedure|SOP]]) that described CNMCyber's policies and requirements towards drawings. Particularly, she found out that the drawings shall be submitted to [[CNM Repo]] in the [[SVG]] format. Then, Sonia envisioned how she would draw the solution and submit it as a deliverable and, particularly, estimated her time commitment. After that, Sonia planned for her drawing to be created. Sonia proposed her plan to [[CNMCyber Coordinator]]s and was hired as a [[Careerprise contractor]]. Now, Sonia undertaking the solution development project while creating the drawing in order to deliver it to [[CNMCyber Coordinator]]s.
 
:# ''Solution implementation project''. You discovered a problem that the landing screen of your website needs some background. You researched the constraints and envisioned some drawing as the solution for that problem. Now, you are undertaking the solution idea project while planning for that drawing to be created. You describe the future video. You are not a graphic designer, but you may create a sketch or just describe that drawing in order to help [[CNMCyber Coordinator]]s hire needed designers.
 
:# ''Solution implementation project''. You discovered a problem that the landing screen of your website needs some background. You researched the constraints and envisioned some drawing as the solution for that problem. Now, you are undertaking the solution idea project while planning for that drawing to be created. You describe the future video. You are not a graphic designer, but you may create a sketch or just describe that drawing in order to help [[CNMCyber Coordinator]]s hire needed designers.
  

Revision as of 22:12, 30 April 2023

A CNM Website Developer (hereinafter, the Dev) is an incumbent of the introductory, first-quarter CNM practice job (hereinafter, the Practice) that The Economic Group has developed to practically introduce CNM learners to website projects. Normally, the Devs practice in development of CNMCyber websites, including their contents, designs, information architectures, SEO, software, and WWW settings.

The Practice belongs to the Website Developer Bootcamp (hereinafter, the Bootcamp), which is the first quarter of CNMCyber Bootcamps. This quarter's lessons are designed to prepare the Devs to that Practice. The Practice is offered to those enrolled in the Bootcamp who successfully pass CNM Website Development Exam after taking the Bootcamp's classes. Successful completion of the website development practice qualifies the Residents as Certified Website Development Associates.


Career objectives

Challenges

Credentials

Further paths

KSAs

to acquire their new knowledge, skills, and abilities (KSA)

Occupations

The Dev's Practice touches many occupations. They may include one or more of the following:
  • Architecture and design such as Human Factors Engineers and Ergonomists, Information Architects, as well as Web and Digital Interface Designers as long as the Devs design website contents, interfaces, and structures.
  • Content creation such as Producers and Directors, Proofreaders and Copy Markers, as well as Writers and Authors as long as the Devs create website contents such as graphics, multimedia, and texts.
  • Technology development such as Architectural and Engineering Managers, Software Developers, as well as Web Developers as long as the Devs work with the technologies behind the website.
  • Web-search marketing as Search Marketing Strategists as long as the Devs work on search engine optimization (SEO).

Position

The Devs undertake website projects in order to develop CNMCyber websites. To learn about benefits, competencies, history, supervision, and target audiences, please consult the CNM practice job wikipage.

Choice of practice

By default, the Devs choose Projects that suit them best. The Devs can choose between:
In addition, CNM Cyber Project Managers may ask a Dev to take an urgent or specific project when they understand the Dev's professional capacity. Particularly, that means that the Devs have to choose their first project at least.

How to start

Are you interested in getting started as the Dev? Please follow a step-by-step instruction as follows:
  1. Until Website Developer Bootcamp is fully developed, briefly review the following wikipages:
    1. This very wikipage since it describes your website development Practice specifically,
    2. CNM practice job since this wikipage describes your Practice generally,
    3. Website project since this wikipage describes those projects that could be undertaken to develop websites generally, not specifically to your Practice, but your Practice can correlate to them,
    4. CNMCyber website wikipage since it describes the websites you are about to develop, and
    5. CNM Website Projects since this wikipage describes those projects that are authorized to practice with.
    Those wikipage contents are neither intuitive nor user-friendly yet; however, if you cannot read them, you cannot work.
  2. Ask questions. Questions are a huge part of your work; if you cannot ask, you cannot work. If you prefer videoconferences, attend any CNMCyber This Week event. You will have opportunities to ask questions and get responses in real time.
  3. Study this very and CNM practice job wikipages in details to be ready to discuss two topics: (a) what paragraph is intentionally left unclear and (b) what section can be taken out without big harm. You will be offered to discuss those topics during your job interview. Why? If you don't know your job, you cannot work.
  4. Be generally prepared to learn while practicing. For instance, CNM Wiki is one of the Dev's primary tools. The lectios of CNMCyber that cover usage of that wiki include What CNM Wiki Is, Collaboration on Documents, Functions of Wiki, and CNM Wiki at Cyber. However, they cannot cover all that the Devs need. At the same time, the World Wide Web (WWW) contains additional resources for MediaWiki, which is the software behind CNM Wiki. The Devs face similar challenges while learning about DNS, website IA, WordPress, as well as other tools and knowledge frameworks that CNMCyber Team utilizes in website development.
  5. If you are willing to be paid, understand why the Cyber project is undertaken and what value is expected from the Dev. That's simple. If you cannot deliver what CNMCyber Customer pays for, you cannot work. Everything that CNMCyber Customer pays for is stated on this very wikipage.
  6. Wait for 2-3 months if you cannot understand what your objectives are. There is a chance that the course and/or videos will be developed out of this wikipage during that time. The introductory courses will be available at https://cert.cnmcyber.com after registering at https://opplet.net/user/register ; the videos will be published on CNM Tube and YouTube. Some of course wiki-materials are linked to WorldOpp Orientation, EmployableU Foundation, and CNMCyber Bootcamps wikipages.
  7. At the CNM Website Projects wikipage, pick up the project you would like to practice with. You may have no idea what that particular project is about. First of all, no project is fully clear and, secondly, to learn about one project is always simpler than to learn about many. When you really studied this very wikipage and understand what your objectives are, you should know how to go about that project. If you cannot pick your project, you cannot start working as the Dev.
  8. Present your pick during a CNMCyber This Week event, while stating (a) the project you picked, (b) what you plan to deliver, and (c) how much time you expect to work in order to deliver what you plan to deliver.
  9. Wait for CNMCyber Customer's approval or feedback to start your Practice this week or modify your proposal.

Tools

  • CNM Agile as a set of policies for the Devs' management of their developments.
  • Inplz Page; every learner shall have their CNM WordPress instance to play with. At the same time, we will need to clarify the website builder to include into CNM WordPress. We shall look at Elementor or WordPress Gutenberg.
  • CNM Wiki is the primary tool for website projects generally and development of website ideas, contents, and wiki-based prototypes specifically.
  • One more COTS package shall be added for cnmcyber.com landing. Our production instance of CNM WordPress would be CNM Page, but we need to use something simpler for the landing at cnmcyber.com. We look at Ghost, which is written with NodeJS, and, possibly, Grav, which is really lightweight.

What Devs produce

Most importantly, the Devs are expected to achieve their Career objectives and acquire other personal benefits as their result of the Practice. As a part of CNMCyber Team, the Devs shall produce two categories of measurable outputs:
  1. Website deliverables, which are those CNMCyber websites, their components, and other CNMCyber products that the Devs are able to produce. CNMCyber Coordinators will further utilize to develop the very CNMCyber websites that the particular Dev practices with.
  2. Work documents, which are those documents that support website developments. Particularly, they include those requirements that would allow hiring Careerprise contractors to develop those CNMCyber websites that the Devs don't produce directly, on their own.
In other words, the Devs are expected to deliver either (a) website components or (b) the documents that would allow those components to produce. The Devs stop practicing with CNMCyber websites and work documents after their delivery. CNMCyber Coordinators further take over their development.
In addition, the Devs may be offered to develop CNMCyber products other than CNMCyber websites. For instance, development of this very wikipage is also a project that the Dev may take on.

Work documents

Generally speaking, a document is a separate piece that (a) presents data, (b) is composed with texts and/or images, and (c) can further be edited or revised. A document that can no longer be revised, for instance, a transcript of a meeting that has already ended or a statement of work that a contractor has already agreed on, becomes a record.

For the purposes of this very wikipage, work documents refer to those documents which target audience differs from the general public regardless of whether those documents are available to the public or not.

The work documents are used or might be utilized by one or more of the following audiences:

  1. A particular Dev who practices with a particular CNMCyber website shall use the work documents for development process and reports.
  2. Dev's mentors shall use the work documents to assess the Dev's progress and his or her readiness to move on.
  3. The other Devs, who will further work on other websites in the future, may further utilize in their Practice as prototypes and training materials.
  4. CNMCyber Coordinators shall use some work documents to hire Careerprise contractors in order to develop what the Devs are not able to develop on their own.

In addition, the Devs may practice with those public documents such as website texts that belong to the Public contents. As work products of the Devs, documents shall be published at CNM Wiki.

Product wikipages

For the purposes of this very wikipage, product wikipages refer to descriptions of CNMCyber websites, as well as deliverable requirements, organizational and technical documentation such as standing operating procedures (SOPs), minutes of the meetings, testing and other reports, etc. Those pages are listed at the "CNMCyber Websites" category

Project wikipages

At CNM Wiki, Projects are documented using two types of wikipages:
  1. The progress on particular projects is reported on the CNM Website Projects wikipage.
  2. Project pages document everything, but progress reports. Those pages are listed at the "CNM Website Projects" category and include project documents such as project charter, asset register, competency register, stakeholder register, requirements traceability matrix, project scope baseline, project schedule baseline, project cost baseline, and acceptance criteria, as well as those communications, memos, meetings, etc. that are related to developments of CNMCyber websites.

Website deliverables

For the purposes of this very wikipage, website deliverables refer to those work products that the Devs deliver to CNMCyber Team for further usage as cores of CNMCyber websites, their components, or new features of existing websites.

The Devs shall aim to create one or more of the following website deliverables: (a) Public contents, (b) SEO efforts, (c) Website designs, (d) WWW settings, and, finally, (e) System-based websites.

Public contents

For the purposes of this very wikipage, public contents refer to those audiovisuals, graphics, and texts that the website visitors shall be able to read, see, and/or hear. As work products of the Devs, texts shall be published at CNM Wiki, while audiovisuals and graphics shall be stored at CNM Repo.

SEO efforts

For the purposes of this very wikipage, SEO efforts refer to those action plans that shall improve website's search engine optimization (SEO). As work products of the Devs, action plans shall be published at CNM Wiki.

System-based websites

For the purposes of this very wikipage, system-based websites refer to those websites that are powered by one or more content management systems (CMSs). The websites may represent prototypes, minimal viable products (MVPs), or marketables. As work products of the Devs, websites shall be hosted at CNM Cloud.

Website designs

For the purposes of this very wikipage, website designs refer to those depictions that represent current or future website's appearance, including single webpages and website IAs overall. As work products of the Devs, final depictions shall be stored at CNM Repo; their thumbs and sketches may emerge at CNM Wiki.

WWW settings

For the purposes of this very wikipage, WWW settings refer to those scripts of DNS record, lines of webserver code, and hosting details that are necessary for the website to be accessible on the World Wide Web (WWW). As work products of the Devs, scripts, lines, and details shall be published at CNM Wiki.

Projects

Generally speaking, a project is a temporary endeavor undertaken in order to create a unique work product. Normally, a project intends to produce a solution that solves some problem. The work product that is created to deliver to its customer is called a deliverable.

For the purposes of this very wikipage, projects refer to those website projects that are undertaken to create What Devs produce. The Devs's deliverables include Website deliverables and Work documents. While working on projects, the Devs are engaged in the What Devs do activities.

Authorized projects

Those Projects that are authorized to practice with are listed on the CNM Website Projects wikipage.

DREPD patterns

Main wikipage: DREPD
Although no single straightforward pattern of project advancement efforts, various developments tend to be cyclical. As an example, letters in the DREPD cycle represent five steps:
  1. D for "Discovering the problems". To initiate a project, the Devs shall identify the website need that they would like to satisfy. Outside of website development, we can compare this step with a situation in which someone realizes that he or she needs a better Internet access.
  2. R for "Researching the grounds". To start the initiated project, the Devs shall study the website needs and work environments in some depth. Outside of website development, we can compare this step with someone's search for available Internet service provider's offers after he or she realized that they need to improve their Internet access.
  3. E for "Envisioning the solutions". To plan the researched project, the Devs shall imagine what the solutions should look like. Outside of website development, we can compare this step with someone's decision what Internet access they are willing to purchase.
  4. P for "Planning the production". To execute the project plan, the Devs shall decide how the imagined solution should be developed. Outside of website development, we can compare this step with someone's plans for how they purchase the needed Internet access and how they pay for it.
  5. D for "Doing to move forward". To start a new DREPD cycle, the Devs shall act on the plan, observe real situations, and re-identify the website need. Actually, the action verbs in that step starts with D; do what is planned, detect what hasn't been expected, and discover new wills. That new discovery may start a new cycle; new data shall emerge while doing and/or after getting something done. Outside of website development, we can compare this step with someone's purchase of Internet access and getting lessons learned in order to make the next purchase better.
This cycle or, to be more exact, cycle of cycles, can be found in the whole development, in every group of processes, every process and every part of processes where ever anything new is or is going to be developed. The Devs can apply this pattern to developments of audiovisuals, minimum viable products (MVPs), textual contents, prototypes, and website IA.

Project variety

Main wikipage: Website project
The website project wikipage presents a general, not specific to the Cyber, variety of website development endeavors.

Projects of projects

By itself, a website is the unique deliverable that is desired. That deliverable consists of audiovisuals, designs, DNS records, images, and texts, each or which shall be developed and delivered before the whole website is ready to offered on the market.
So, a bigger deliverable, which is a website in that case, is a product of many smaller deliverables. Therefore, the website development consists of many projects.
Several projects shall be undertaken in order to develop one website; several projects shall also be undertaken in order to develop each website component. To demonstrate how it may work, let's take the following hypothetical scenarios:
  1. Solution idea project. Tanya discovered a problem that the landing screen of the kryvi.com website needs some background. Tanya researched the constraints and envisioned some drawing as the solution for that problem. Now, she is undertaking the solution idea project while planning for that drawing to be created. Tanya is not a graphic artist, but she is sketching and describing that drawing in order to help CNMCyber Coordinators hire needed designers.
  2. Solution development project. Sonia is a graphic artist and is looking for opportunities to work as such. While serving as the Dev, she discovered CNMCyber's need to have a drawing for their kryvi.com website's landing screen. Sonia carefully reviewed available sketches and descriptions. To research the constraints, Sonia attended a Careerprise conference. She was directed to the standing operating procedure (SOP) that described CNMCyber's policies and requirements towards drawings. Particularly, she found out that the drawings shall be submitted to CNM Repo in the SVG format. Then, Sonia envisioned how she would draw the solution and submit it as a deliverable and, particularly, estimated her time commitment. After that, Sonia planned for her drawing to be created. Sonia proposed her plan to CNMCyber Coordinators and was hired as a Careerprise contractor. Now, Sonia undertaking the solution development project while creating the drawing in order to deliver it to CNMCyber Coordinators.
  3. Solution implementation project. You discovered a problem that the landing screen of your website needs some background. You researched the constraints and envisioned some drawing as the solution for that problem. Now, you are undertaking the solution idea project while planning for that drawing to be created. You describe the future video. You are not a graphic designer, but you may create a sketch or just describe that drawing in order to help CNMCyber Coordinators hire needed designers.

Sprint

In CNM Agile, a sprint is one or more DREPD cycles that a developer or development team completes in order to get a desired deliverable at a targeted work-product state. One sprint normally lasts for 3-5 weeks.

Website-core projects

Websites are complex products, so are their production. For the purposes of this very wikipage, website-core projects refer to those website projects that are undertaken to develop the core of websites rather than their components such as Public contents, SEO efforts, and non-essential WWW settings.

Among Website designs, CNMCyber Team classifies website IAs as the backbone of the website core, while graphic design and UX design as parts of website's marketables.

Website idea

Similarly to any work product, a new website starts with an idea; it should be imagined first to be developed further. The Devs may express that idea in words at CNM Wiki and/or one or more sketches uploaded there as files. Depictions of a future website as a whole, in fact, are drafts of website IA.

Wiki-based prototype

CNMCyber Team utilizes CNM Wiki to develop early functional websites. Separate wikipages serve as webpage prototypes. Internal site links shall be made manually. Titles of non-landing contents at CNM Wiki shall have the webpage name between [Domain-name] and the word, content, for instance, Bskol.com About-us content. Since the landing webpage has no special name, the landing page contents at CNM Wiki shall be titled using the [Domain-name] content format, for instance, Bskol.com content. A content wikipage category shall have the [Domain-name] Contents format and themselves belong to the Category: Website Contents.

CMS-based prototype

CNMCyber Team utilizes various content management systems (CMSs) such as CNM WordPress for website development. The Devs normally transfer website textual contents from CNM Wiki to a CMS-based prototype. Placeholders shall be used for those audiovisuals that haven't been developed yet; lorem ipsum shall be used to substitute future texts.

Website MVP

A minimum viable product (MVP) is an early version of a CNMCyber website that includes sufficient features to satisfy early adopters. To do so, the Devs implement the website IA on a content management system (CMS) and locate the website on World Wide Web (WWW). Lorem ipsum shall no longer be used and audiovisual placeholders shall not look like construction pieces at the MVP stage of development.

Website marketable

As a marketable, any CNMCyber website shall serve its part of Careerprise Funnel. During the Practice, the Devs do not normally work on the website marketables. However, they can do so as Careerprise contractors after their graduation from the website development quarter of the Bootcamp.

What Devs do

No final instructions can exist since every website project is unique. If any project is no longer unique, it is no longer a project. It is an ongoing operation. Blueprints below represent just suggestions, not strict directions.

While following the DREPD patterns, the Devs' practice can be divided in sets of processes. Every of the Projects shall start with Discovering the problems, go through Researching the grounds, Envisioning the solutions, Planning the production, as well as end with the Doing to move forward activities. The DREPD cycle runs several times as the project deliverable progresses from a Website idea to a Wiki-based prototype, CMS-based prototype, and, eventually, Website MVP. After that, CNMCyber Coordinators take over the website projects to hire Careerprise contractors in order to develop Website marketables.

Discovering the problems

To initiate a website project, the Devs shall:
  1. Follow the How to start recommendations.
  2. Explore existing CNMCyber websites, their documentation at CNM Wiki, other websites related to career services that are available on the market.
  3. Compare existing CNMCyber websites, their documentation at CNM Wiki, as well as other websites related to career services that are available on the market to detect opportunities to improve existing CNMCyber websites.
  4. Identify the business need that some CNMCyber website shall satisfy.
  5. Create a project wikipage, while stating the identified need, its reasoning and backgrounds.
  6. Create a product wikipage, while starting describing the website.
  7. Report on progress of the initial project discovery using the CNM Website Projects wikipage.
  8. Present the progress, plans and possible concerns during CNMCyber This Week meetings.
The initial project discovery ends when the business need is identified. New project discoveries belong to the Doing to move forward activities.

Researching the grounds

To start the initiated project, the Devs shall:
  1. Study the website needs and project environments in some depth.
  2. Identify those sources, primarily stakeholders and competitors, of information that can be useful for website development.
  3. Evaluate what output, a Website idea, a Wiki-based prototype, CMS-based prototype, or Website MVP, is expected from the current efforts, as well as its status of completeness.
  4. Update the project and product wikipages, while linking the new data to the identified sources.
  5. Report on progress of the project studies using the CNM Website Projects wikipage.
  6. Present the progress, plans and possible concerns during CNMCyber This Week meetings.
The project studies start after the business need is identified. Product envisioning, project planning, production, as well as commissioning and management of a product always reveals new factors and data. That is why the studies end with the project closure.

Envisioning the solutions

To plan the researched project, the Devs shall:
  1. Identify those target audiences who are supposed to use future deliverables.
  2. Create imaginary personas that would represent each of the identified audience.
  3. Produce stakeholder requirements for each created persona using CNM Wiki.
  4. Conceive what the solutions should look like.
  5. Describe the solution or solutions using CNM Wiki.
  6. Report on progress of the product description using the CNM Website Projects wikipage.
  7. Present the progress, plans and possible concerns during CNMCyber This Week meetings.
The product description efforts shall start when business needs are identified and end when a Sprint of the product wikipage development is completed.

Planning the production

To execute the project plan, the Devs shall:
  1. Examine the existing products that are going to be further developed if they are available.
  2. Analyze the collected project data while organizing that data on CNM Wiki.
  3. Formulate the difference between what actually is and what is needed to be. The existing products are what actually is, while the specified deliverable is what is needed to be. The project activities shall address this identified difference; they represent what needs to be done.
  4. Decide how the imagined solution should be developed.
  5. Draft a plan of actions that need to be undertaken in order to execute the development decisions.
  6. Publish the project plan on CNM Wiki.
  7. Report on progress of the project planning using the CNM Website Projects wikipage.
  8. Present the progress, plans and possible concerns during CNMCyber This Week meetings.
The project planning efforts shall start no later than completion of product wikipage's Sprint and end when a Sprint of the project wikipage development is completed.

Doing to move forward

To start a new DREPD cycle, the Devs shall:
  1. Act on the plan while doing what is planned such as creating prototypes, producing components, etc.
  2. Test the deliverable and, if necessary, its parts.
  3. Observe real situations, while detecting what hasn't been expected.
  4. Collect data related to the deliverables under development and their production.
  5. Analyze the collected project data while organizing that data on CNM Wiki.
  6. Re-identify the website need, while discovering new wills. Since new data shall emerge while doing and/or after getting something done, that new discovery shall start a new DREPD cycle.
  7. Treat creation of deliverables as primary source of data to revisit the Researching the grounds activities.
  8. Revisit the Researching the grounds activities when new data or new sources of data emerges in order to revisit further the Envisioning the solutions and Planning the production activities.
  9. Report on progress of the plan executing using the CNM Website Projects wikipage.
  10. Present the progress, plans and possible concerns during CNMCyber This Week meetings.
The project execution efforts shall start no later than completion of project wikipage's Sprint and end when the CNMCyber website becomes a marketable. The Devs though progress websites to only minimum viable products (MVPs).

See also

Related lectures