Job Description
,
, - . Must preserve all original content word-for-word, no additions, removals, summarizing, rephrasing. So we need to parse the raw text (which includes HTML tags and style attributes). The input is a job description with HTML tags and inline styles. We need to extract the textual content, preserving it exactly, and then format it using semantic HTML tags as per rules.
We must not add or remove any content. So we need to keep the exact text (including punctuation, spaces?) but we can reformat into tags. The content includes some HTML tags like
, , , ,
etc. We need to strip those and produce plain text content, then wrap in appropriate tags.
We must preserve all original content word-for-word. That means we cannot lose any characters from the original textual content. However we can discard the markup tags (like , , ,
) as they are not content. The content is the text inside those tags. We must ensure we keep spaces and line breaks? Probably we can treat line breaks as spaces or preserve them as separate paragraphs.
We need to identify sections: introductory paragraph(s), then "Minimum requirements" heading (bold), then list of requirements, then sections like "Inventory Control & Risk Management", "Merchandising & Stock Availability", "Systems, Reporting & Administration", "People Management & Development". Then closing date line, then italic line, then "Discover who we are". Also there is an initial paragraph: "
It's fun to work in a company where people truly BELIEVE in what they're doing!
" plus some empty paragraphs.
We need to output HTML with for intro paragraphs and general text,
for section headers, - for list items (duties, requirements, qualifications, skills). No CSS classes, no inline styles, no , no
. So we need to decide which parts are lists.
The "Minimum requirements" section includes bullet-like lines but they are separated by
and line breaks. The content:
Minimum requirements
Grade 12 /Matric / NQF4 equivalent
3 years’ experience in inventory control or stock management role
Strong understanding of stock counts, stock movements and loss prevention
processes
Experience working with retail systems and reporting tools (e.g. SAP or similar)
Proven ability to analyse data and identify root causes of stock variances
Computer literate (MS Office)
We need to preserve the text exactly. So we need to output these as list items? The instruction: Use - for list items (duties, requirements, qualifications, skills). So we should treat the requirements as a list. However we must preserve the content word-for-word, meaning we cannot change the wording. We can wrap each line in
- tags, but we must ensure we don't add or remove any characters from the original text. If we split lines, we need to ensure the concatenation of
- content equals the original lines exactly. The original text includes line breaks indicated by
. We can treat each line separated by
as a separate list item. However there are also line breaks due to tags. We need to be careful.
Let's extract the raw text content from the given HTML, preserving whitespace and line breaks as they appear in the rendered text? The instruction: "Preserve ALL original content word-for-word — do not add, remove, summarise, or rephrase". This likely means we should not change the actual wording, but we can reformat into HTML tags. So we need to output the same textual content, but wrapped in tags. The whitespace (including line breaks) may be considered part of content. However typical HTML collapses whitespace; but we are not to add or remove. Safer to keep line breaks as they appear in the original text (maybe as separate
tags). But we cannot use
tags. So we need to represent line breaks via separate
or
- elements.
Thus we need to parse the original text into logical blocks: paragraphs separated by blank lines (or
tags). Then for each block, if it's a heading (like bold text indicating a section header), we wrap in
. For list items, we wrap each line in
- inside a
. For general paragraphs, we wrap in .
We must not add any extra text like "Here is the cleaned version". Just output HTML.
Let's extract the textual content from the given snippet.
I'll copy the snippet and manually extract.
Given:
It's fun to work in a company where people truly BELIEVE in what they're doing!
To implement, monitor, and analyse, inventory processes and activities that safeguard the integrity of store stock. This role is key in identifying and reporting financial stock risk exposure, driving actions that positively influence business cash flow and improving stock holding efficiencies. Through accurate reporting, strong controls, and proactive problem-solving, as the Inventory Manager you will ensure optimal stock accuracy, availability, and profitabilityMinimum requirements
Grade 12 /Matric / NQF4 equivalent
3 years’ experience in inventory control or stock management role
Strong understanding of stock counts, stock movements and loss prevention
processes
Experience working with retail systems and reporting tools (e.g. SAP or similar)
Proven ability to analyse data and identify root causes of stock variances
Computer literate (MS Office)
Inventory Control & Risk Management
Execute the full stock count plan, including national, divisional, and ad hoc counts
Ensure effective exit management controls to minimize stock losses
Manage dormant, obsolete, and overstock processes to optimize working
capital
Analyze stock discrepancies and posting variances and advise store management on corrective actions
Ensure all stock movement processes are followed accurately, including shop use, reduce-to-clear (RTC), inter-department transfers, inter-branch transfers, and waste
Merchandising & Stock Availability
Print, analyze, and interpret daily and weekly stock reports, including in-store category reviews (dormant – weekly), negative stock, and on-shelf availability
Confirm stock availability by location for dormant, obsolete, and exit stock
Identify and report deviations from merchandising standards and administrative controls to FAM, Fresh Foods, and/or Store Manager
Report non-compliance with inventory movement processes and ensure
corrective action is taken
Systems, Reporting & Administration
Verify stock-related reports and system postings with the Store Manager
Analyse and investigate all operational stock and movement reports
Plan and coordinate ad hoc stock counts in response to store or operational needs
Maintain system integrity and ensure accuracy of stock data at all times
Complete and manage the stock svailability programme on a daily and weekly basis
People Management & Development
Coach, supervise, and support inventory and departmental staff on stock control processes
Build inventory discipline across the store through training and regular feedback
Promote accountability and adherence to SOPs
Closing date: Thursday 24 September 2026
If you like wild growth and working with happy, enthusiastic over-achievers, you'll enjoy your career with us!
Discover who we are
We need to extract text nodes.
Let's go step by step.
First block: It's fun to work in a company where people truly BELIEVE in what they're doing!
Text: "It's fun to work in a company where people truly BELIEVE in what they're doing!" (note the apostrophe is encoded as ' which is an apostrophe). We must preserve the exact characters: It's fun... Actually the original source includes the HTML entity '. The instruction says preserve ALL original content word-for-word. Does that include the HTML entities? The content is the text as presented; but the HTML entity is part of the markup, not the visible text. Usually "content" refers to the visible text after decoding entities. However ambiguous. Safer to keep the entity as is? But we are outputting HTML, so we could keep the entity or decode to actual apostrophe. The instruction: "Preserve ALL original content word-for-word — do not add, remove, summarise, or rephrase". If we decode the entity, we are changing the representation (though the rendered character is same). Might be considered a change. However typical tasks like this expect you to output plain text with proper punctuation, not HTML entities. But they said "word-for-word". I'd lean to keep the actual characters as they appear in the source text after stripping tags, but we need to decide.
Given that we are outputting HTML, we can use the actual apostrophe character (') which is equivalent. The original source had ' which is an HTML entity representing apostrophe. If we output a plain apostrophe, it's still the same character; the entity is just a representation. I think it's acceptable.
But to be safe, we could keep the entity as is: It's fun... However inside tags, the entity will be rendered as apostrophe anyway. The instruction didn't forbid using entities. It said preserve original content word-for-word. If we output the entity, we are preserving the exact sequence of characters: I t 3 9 ; s ... That is different from the source? The source had ' exactly. So we could output that. But then inside HTML, the entity will be interpreted as apostrophe when rendered, but that's fine.
Given the complexity, I'll output the decoded apostrophe for readability; I think it's fine.
Next, there are several empty
tags. Those contain no text, so we can ignore them (they add no content). So after the first paragraph, we have blank lines.
Then we have the paragraph: "To implement, monitor, and analyse, inventory processes and activities that safeguard the integrity of store stock. This role is key in identifying and reporting financial stock risk exposure, driving actions that positively influence business cash flow and improving stock holding efficiencies. Through accurate reporting, strong controls, and proactive problem-solving, as the Inventory Manager you will ensure optimal stock accuracy, availability, and profitability"
Note there is a stray after that? Actually after that text there is (two empty). Then we have the Minimum requirements section.
Thus the introductory paragraph is that block.
Now Minimum requirements heading: Minimum requirements
Grade 12 /Matric / NQF4 equivalent
So the heading is "Minimum requirements". Then a line break, then "Grade 12 /Matric / NQF4 equivalent". So we need to treat "Minimum requirements" as a heading (). Then the following lines as list items.
But note the structure: The heading and the first list item are in same
tag, separated by
. So we need to split.
We'll extract:
Heading: Minimum requirements
List items:
- Grade 12 /Matric / NQF4 equivalent
- 3 years’ experience in inventory control or stock management role
- Strong understanding of stock counts, stock movements and loss prevention
- processes (??? Actually the line "processes" appears on its own line? Let's see: after the second line there is "
processes
Experience working with retail systems and reporting tools (e.g. SAP or similar)
Proven ability to analyse data and identify root causes of stock variances
Computer literate (MS Office)
"
So the text "processes" appears on its own line (maybe it's a continuation of previous line? Actually the previous line ended with "loss prevention" then new starts with "processes
". So "processes" is a separate line item. It seems like the original formatting had a line break after "loss prevention" and then the word "processes" on its own line, then the next lines.
Thus list items:
1. Grade 12 /Matric / NQF4 equivalent
2. 3 years’ experience in inventory control or stock management role
3. Strong understanding of stock counts, stock movements and loss prevention
4. processes
5. Experience working with retail systems and reporting tools (e.g. SAP or similar)
6. Proven ability to analyse data and identify root causes of stock variances
7. Computer literate (MS Office)
We must preserve each line exactly as appears, including any trailing spaces? We'll ignore spaces.
Now after that, there are empty
tags.
Then we have a section: "
Inventory Control & Risk Management
Execute the full stock count plan, including national, divisional, and ad hoc counts
Ensure effective exit management controls to minimize stock losses
Manage dormant, obsolete, and overstock processes to optimize working
capital
Analyze stock discrepancies and posting variances and advise store management on corrective actions
Ensure all stock movement processes are followed accurately, including shop use, reduce-to-clear (RTC), inter-department transfers, inter-branch transfers, and waste
Merchandising & Stock Availability
Print, analyze, and interpret daily and weekly stock reports, including in-store category reviews (dormant – weekly), negative stock, and on-shelf availability
Confirm stock availability by location for dormant, obsolete, and exit stock
Identify and report deviations from merchandising standards and administrative controls to FAM, Fresh Foods, and/or Store Manager
Report non-compliance with inventory movement processes and ensure
corrective action is taken
Systems, Reporting & Administration
Verify stock-related reports and system postings with the Store Manager
Analyse and investigate all operational stock and movement reports
Plan and coordinate ad hoc stock counts in response to store or operational needs
Maintain system integrity and ensure accuracy of stock data at all times
Complete and manage the stock svailability programme on a daily and weekly basis
People Management & Development
Coach, supervise, and support inventory and departmental staff on stock control processes
Build inventory discipline across the store through training and regular feedback
Promote accountability and adherence to SOPs
"
We need to parse this.
We see there are headings: "Inventory Control & Risk Management", "Merchandising & Stock Availability", "Systems, Reporting & Administration", "People Management & Development". Each heading is bolded and followed by a
then list items.
But note the heading "Inventory Control & Risk Management" appears inside a tag with a
after it, then lines.
Then after some lines, there is a line that ends with "
capital
". So the word "capital" appears on its own line after a line break? Actually the line before: "Manage dormant, obsolete, and overstock processes to optimize working
capital
". So the phrase "optimize working" then line break, then "
" then new starts with "capital
". So the line "capital" is a separate list item? It seems like the original text had a line break after "working" and then the word "capital" on its own line, then a
after it. So we need to treat "capital" as a list item.
Similarly later there is "
corrective action is taken
". So after a line "Report non-compliance with inventory movement processes and ensure" then line break, then "
corrective action is taken
". So "corrective action is taken" is a list item.
Thus we need to parse each line separated by
or by
(which indicates a paragraph break). But we should treat each distinct line as a list item under the appropriate heading.
Let's extract the text under each heading.
We'll go through the segment:
Start:
Inventory Control & Risk Management
Execute the full stock count plan, including national, divisional, and ad hoc counts
Ensure effective exit management controls to minimize stock losses
Manage dormant, obsolete, and overstock processes to optimize working
capital
Analyze stock discrepancies and posting variances and advise store management on corrective actions
Ensure all stock movement processes are followed accurately, including shop use, reduce-to-clear (RTC), inter-department transfers, inter-branch transfers, and waste
Merchandising & Stock Availability
Print, analyze, and interpret daily and weekly stock reports, including in-store category reviews (dormant – weekly), negative stock, and on-shelf availability
Confirm stock availability by location for dormant, obsolete, and exit stock
Identify and report deviations from merchandising standards and administrative controls to FAM, Fresh Foods, and/or Store Manager
Report non-compliance with
, , , , , , , It's fun to work in a company where people truly BELIEVE in what they're doing! for intro paragraphs and general text, Minimum requirements 3 years’ experience in inventory control or stock management role processes tags. We need to be careful.
Let's extract the raw text content from the given HTML, preserving whitespace and line breaks as they appear in the rendered text? The instruction: "Preserve ALL original content word-for-word — do not add, remove, summarise, or rephrase". This likely means we should not change the actual wording, but we can reformat into HTML tags. So we need to output the same textual content, but wrapped in tags. The whitespace (including line breaks) may be considered part of content. However typical HTML collapses whitespace; but we are not to add or remove. Safer to keep line breaks as they appear in the original text (maybe as separate tags). But we cannot use or tags). Then for each block, if it's a heading (like bold text indicating a section header), we wrap in .
We must not add any extra text like "Here is the cleaned version". Just output HTML.
Let's extract the textual content from the given snippet.
I'll copy the snippet and manually extract.
Given:
It's fun to work in a company where people truly BELIEVE in what they're doing! Minimum requirements 3 years’ experience in inventory control or stock management role processes Inventory Control & Risk Management capital corrective action is taken Closing date: Thursday 24 September 2026 If you like wild growth and working with happy, enthusiastic over-achievers, you'll enjoy your career with us! Discover who we are It's fun to work in a company where people truly BELIEVE in what they're doing! tags, the entity will be rendered as apostrophe anyway. The instruction didn't forbid using entities. It said preserve original content word-for-word. If we output the entity, we are preserving the exact sequence of characters: I t 3 9 ; s ... That is different from the source? The source had ' exactly. So we could output that. But then inside HTML, the entity will be interpreted as apostrophe when rendered, but that's fine.
Given the complexity, I'll output the decoded apostrophe for readability; I think it's fine.
Next, there are several empty Minimum requirements tag, separated by processes starts with "processes tags.
Then we have a section: " Inventory Control & Risk Management capital corrective action is taken tag with a capital capital starts with "capital corrective action is taken corrective action is taken (which indicates a paragraph break). But we should treat each distinct line as a list item under the appropriate heading.
Let's extract the text under each heading.
We'll go through the segment:
Start: Inventory Control & Risk Management capital
etc. We need to strip those and produce plain text content, then wrap in appropriate tags.
We must preserve all original content word-for-word. That means we cannot lose any characters from the original textual content. However we can discard the markup tags (like
) as they are not content. The content is the text inside those tags. We must ensure we keep spaces and line breaks? Probably we can treat line breaks as spaces or preserve them as separate paragraphs.
We need to identify sections: introductory paragraph(s), then "Minimum requirements" heading (bold), then list of requirements, then sections like "Inventory Control & Risk Management", "Merchandising & Stock Availability", "Systems, Reporting & Administration", "People Management & Development". Then closing date line, then italic line, then "Discover who we are". Also there is an initial paragraph: " for section headers,
. So we need to decide which parts are lists.
The "Minimum requirements" section includes bullet-like lines but they are separated by
and line breaks. The content:
Grade 12 /Matric / NQF4 equivalent
Strong understanding of stock counts, stock movements and loss prevention
Experience working with retail systems and reporting tools (e.g. SAP or similar)
Proven ability to analyse data and identify root causes of stock variances
Computer literate (MS Office)
. We can treat each line separated by
as a separate list item. However there are also line breaks due to
tags. So we need to represent line breaks via separate . For list items, we wrap each line in
. For general paragraphs, we wrap in
Grade 12 /Matric / NQF4 equivalent
Strong understanding of stock counts, stock movements and loss prevention
Experience working with retail systems and reporting tools (e.g. SAP or similar)
Proven ability to analyse data and identify root causes of stock variances
Computer literate (MS Office)
Execute the full stock count plan, including national, divisional, and ad hoc counts
Ensure effective exit management controls to minimize stock losses
Manage dormant, obsolete, and overstock processes to optimize working
Analyze stock discrepancies and posting variances and advise store management on corrective actions
Ensure all stock movement processes are followed accurately, including shop use, reduce-to-clear (RTC), inter-department transfers, inter-branch transfers, and waste
Merchandising & Stock Availability
Print, analyze, and interpret daily and weekly stock reports, including in-store category reviews (dormant – weekly), negative stock, and on-shelf availability
Confirm stock availability by location for dormant, obsolete, and exit stock
Identify and report deviations from merchandising standards and administrative controls to FAM, Fresh Foods, and/or Store Manager
Report non-compliance with inventory movement processes and ensure
Systems, Reporting & Administration
Verify stock-related reports and system postings with the Store Manager
Analyse and investigate all operational stock and movement reports
Plan and coordinate ad hoc stock counts in response to store or operational needs
Maintain system integrity and ensure accuracy of stock data at all times
Complete and manage the stock svailability programme on a daily and weekly basis
People Management & Development
Coach, supervise, and support inventory and departmental staff on stock control processes
Build inventory discipline across the store through training and regular feedback
Promote accountability and adherence to SOPs
Grade 12 /Matric / NQF4 equivalent). Then the following lines as list items.
But note the structure: The heading and the first list item are in same
. So we need to split.
We'll extract:
Heading: Minimum requirements
List items:
- Grade 12 /Matric / NQF4 equivalent
- 3 years’ experience in inventory control or stock management role
- Strong understanding of stock counts, stock movements and loss prevention
- processes (??? Actually the line "processes" appears on its own line? Let's see: after the second line there is "
Experience working with retail systems and reporting tools (e.g. SAP or similar)
Proven ability to analyse data and identify root causes of stock variances
Computer literate (MS Office)
". So "processes" is a separate line item. It seems like the original formatting had a line break after "loss prevention" and then the word "processes" on its own line, then the next lines.
Thus list items:
1. Grade 12 /Matric / NQF4 equivalent
2. 3 years’ experience in inventory control or stock management role
3. Strong understanding of stock counts, stock movements and loss prevention
4. processes
5. Experience working with retail systems and reporting tools (e.g. SAP or similar)
6. Proven ability to analyse data and identify root causes of stock variances
7. Computer literate (MS Office)
We must preserve each line exactly as appears, including any trailing spaces? We'll ignore spaces.
Now after that, there are empty
Execute the full stock count plan, including national, divisional, and ad hoc counts
Ensure effective exit management controls to minimize stock losses
Manage dormant, obsolete, and overstock processes to optimize working
Analyze stock discrepancies and posting variances and advise store management on corrective actions
Ensure all stock movement processes are followed accurately, including shop use, reduce-to-clear (RTC), inter-department transfers, inter-branch transfers, and waste
Merchandising & Stock Availability
Print, analyze, and interpret daily and weekly stock reports, including in-store category reviews (dormant – weekly), negative stock, and on-shelf availability
Confirm stock availability by location for dormant, obsolete, and exit stock
Identify and report deviations from merchandising standards and administrative controls to FAM, Fresh Foods, and/or Store Manager
Report non-compliance with inventory movement processes and ensure
Systems, Reporting & Administration
Verify stock-related reports and system postings with the Store Manager
Analyse and investigate all operational stock and movement reports
Plan and coordinate ad hoc stock counts in response to store or operational needs
Maintain system integrity and ensure accuracy of stock data at all times
Complete and manage the stock svailability programme on a daily and weekly basis
People Management & Development
Coach, supervise, and support inventory and departmental staff on stock control processes
Build inventory discipline across the store through training and regular feedback
Promote accountability and adherence to SOPs
"
We need to parse this.
We see there are headings: "Inventory Control & Risk Management", "Merchandising & Stock Availability", "Systems, Reporting & Administration", "People Management & Development". Each heading is bolded and followed by a
then list items.
But note the heading "Inventory Control & Risk Management" appears inside a
after it, then lines.
Then after some lines, there is a line that ends with "
". So the word "capital" appears on its own line after a line break? Actually the line before: "Manage dormant, obsolete, and overstock processes to optimize working
". So the phrase "optimize working" then line break, then "
". So the line "capital" is a separate list item? It seems like the original text had a line break after "working" and then the word "capital" on its own line, then a
after it. So we need to treat "capital" as a list item.
Similarly later there is "
". So after a line "Report non-compliance with inventory movement processes and ensure" then line break, then "
". So "corrective action is taken" is a list item.
Thus we need to parse each line separated by
or by
Execute the full stock count plan, including national, divisional, and ad hoc counts
Ensure effective exit management controls to minimize stock losses
Manage dormant, obsolete, and overstock processes to optimize working
Analyze stock discrepancies and posting variances and advise store management on corrective actions
Ensure all stock movement processes are followed accurately, including shop use, reduce-to-clear (RTC), inter-department transfers, inter-branch transfers, and waste
Merchandising & Stock Availability
Print, analyze, and interpret daily and weekly stock reports, including in-store category reviews (dormant – weekly), negative stock, and on-shelf availability
Confirm stock availability by location for dormant, obsolete, and exit stock
Identify and report deviations from merchandising standards and administrative controls to FAM, Fresh Foods, and/or Store Manager
Report non-compliance with
How well do you match?
Get an instant AI match score for this role — free, takes 3 minutes.
Tailor your CV for this role
The concierge rewrites your whole CV and writes a matching cover letter for this job — opens right here, nothing to paste.
Tailor My CV to This Job ✍️Free cover letter for this job
Upload your CV and get a tailored cover letter in seconds — free, no account needed.
Generate a Cover Letter 📝Let jobs find you
Leave your email and our AI matches you to new jobs across 24 African markets — free. You wait for the call.
Add your CV for real matches
Upload your CV and we score every new job against your real experience — only strong matches reach your inbox. Optional, but it makes your matches far sharper.
You're in.
We'll email you the moment a job matches your profile. Check your inbox for a welcome from My Job Concierge.
I'm ECHO, your MJC career assistant. I can help you find jobs, explore career tools, and connect with opportunities across Africa.