KC

Technology Department, Tanzania.Application Developer

Full-time Tanzania, United Republic of, TZ
Posted 5 hours, 29 minutes ago 17 views 0 applications

Job Description

We need to output clean semantic HTML with

for section headers,

for paragraphs,

  • for list items. No CSS classes, no inline styles, no
    , no
    . Must preserve all original content word-for-word, no addition, removal, summarizing, rephrasing. So we need to extract the text content from the given HTML, preserving exact wording, and then wrap it in appropriate tags. We must not add or remove any content. So we need to output the same textual content, but restructured with semantic tags. We need to identify sections: KEY RESPONSIBILITIES, DAILY RESPONSIBILITIES, MINIMUM POSITION QUALIFICATION REQUIREMENTS (which includes Academic & Professional, Experience, etc). Also there are tables with qualifications etc. We need to preserve the content exactly as text, but we can convert tables into maybe
    • or keep as paragraphs? The instruction: Use
      • for list items (duties, requirements, qualifications, skills). For tables, we could represent each row as a list item? But we must preserve content word-for-word; we can't change the content, but we can change the markup. So we can keep the same text but wrap in appropriate tags. For tables, we could keep as

        containing the text? But we need to preserve the content exactly; we can embed the table content inside

        tags, but we must not add extra characters. However, converting a table to paragraphs would change the structure but not the textual content (the words). The instruction: "Preserve ALL original content word-for-word — do not add, remove, summarise, or rephrase". It doesn't forbid changing the markup; we can change tags as long as the text remains same. So we can strip out table tags and just output the cell contents as paragraphs or list items, ensuring we keep the exact same words and spacing? We must be careful not to lose spaces or line breaks. Probably easiest: output the text as is, but wrap each logical block in

        or

        etc. However, we must not add extra text like newlines that weren't there? Adding line breaks is okay as they are not content? The instruction says preserve original content word-for-word; adding line breaks (like

        tags) adds markup but not visible text? It might be considered adding content? Usually they mean the visible text. So we can add tags. Thus we need to parse the given HTML and extract the visible text, preserving order. Let's extract the text manually. Given HTML:

        KEY RESPONSIBILITIES

        Then
          with list items. Then

           

          (non-breaking space). That's basically empty. Then

          DAILY RESPONSIBILITIES

          Then another
            with list items. Then

             

            Then

            MINIMUM POSITION QUALIFICATION REQUIREMENTS

            Then
            1. Academic & Professional

            Then

             

            Then a figure with table for Academic & Professional details. Then
            1. Experience

            Then

             

            Then another figure with table for Experience details (Total Minimum No of Years Experience Required = 5). Then

                        Need Types are: RQ = Required, AA = Added Advantage

            Then another figure with table for Need Types details (Experience Area 1 – Emerging Technologies etc). Then the HTML cuts off at a

            (maybe incomplete). The snippet ends with:

            Probably the rest is missing. We need to output only what we have? The instruction: preserve ALL original content word-for-word. So we must output exactly the text that appears in the given snippet, including the incomplete tag? The snippet ends with an opening but not closed. However, we must output the exact text as given, but we are to output HTML, not the original HTML. We need to extract the text content, not the markup. The incomplete tag likely is part of the original HTML but not visible text. The visible text after that is nothing. So we can ignore incomplete tags as they contribute no visible text. So we stop before that. Thus we need to collect all visible text nodes in order. Let's extract: 1. "KEY RESPONSIBILITIES" Then list items: - Contribute application development objectives to the overall IT strategy. - Collaborate with business units to formulate banking products and contribute technical guidance to the procurement process. - Analyze product requirements, design and implementation of scalable backend services using Java and Spring Boot as guided by KCBT policies and industry best practice. - Collaborate with internal stakeholders, such as QA testers, product analysts, and fellow developers to deliver assigned features. - Implement best practice and deploy appropriate tools to manage and govern application development and the IT change process. - Actively engage end-users to assess satisfaction and achieve successful project closure. - Work with functional teams to handover system support skills and documentation and formulate OLA agreements with level 1 support. - Identify and champion innovative solutions that exploit existing business opportunities and mitigate existing risks. - Monitor system performance, troubleshoot complex issues, and implement proactive fixes. - Contribute to Agile ceremonies (planning, grooming, retrospectives) and influence product design. Note: The third item had a split across spans but text is: "Analyze product requirements, design and implementation of scalable backend services using Java and Spring Boot as guided by KCBT policies and industry best practice." Ensure we keep exactly that. Then after that list, there is a blank paragraph (non-breaking space) which yields no visible text. Then "DAILY RESPONSIBILITIES" Then list items: - Evaluate and analyze requests to implement new applications to resolve business challenges and improve efficiency of processes. - Evaluate and analyze requests to modify existing software systems and applications where either anomalies have been detected or the process is inefficient. - Manage the application development life cycle, ensuring that the application development policy is adhered to. - Collaborate with business in formulating strategies that ride on software systems to take advantage of business opportunities - Provide support to the banking operations administrators and operators in resolving core banking anomalies and refining operations. - Maintain strong focus on secure coding standards and compliance with banking regulations. Note: The fourth item ends with "opportunities" (no period). Keep as is. Then blank paragraph. Then "MINIMUM POSITION QUALIFICATION REQUIREMENTS" Then subheading "Academic & Professional" (inside ol li). Actually it's a list item with strong. Then blank paragraph. Then table with rows: First row header: Particulars | Detail | Specific Field or Qualification | Need Type Then rows: Education | Bachelors Degree | Any computer related | RQ (empty cell?) Actually second row: first cell empty? Let's see: after Education row, there is a row with first cell empty, second cell "Professional Qualifications", third cell "Java Certification, Oracle Certification, Enterprise Architecture, ITIL", fourth cell "RQ" Then third row: first cell empty, second cell "Masters Degree", third cell "Any computer related, Project Management", fourth cell "AA" We need to preserve the text exactly, including spaces. The empty cells produce no text. Then after that table, blank paragraph. Then subheading "Experience" (inside ol start="2"). Then blank paragraph. Then table with rows: Header? Actually the table has two columns: first column label "Total Minimum No of Years Experience Required", second column value "5". There's also a blank paragraph after. Then blank paragraph. Then a div with footnote: "Need Types are: RQ = Required, AA = Added Advantage" Then another table: Header row: Detail | Minimum No of Years | Need Type Rows: Experience Area 1 – Emerging Technologies (e.g. Mobile, Internet Banking and Digital loans and savings) | 3 | ES Experience Area 2 – IT Projects | 3 | DE Experience Area 3 – Banking Operations | 3 | ES Then the snippet ends. We need to output this as HTML with

            for section headers,

            for paragraphs,

            • for list items. We need to decide what constitutes a section header. The headings are: KEY RESPONSIBILITIES, DAILY RESPONSIBILITIES, MINIMUM POSITION QUALIFICATION REQUIREMENTS, Academic & Professional, Experience, Need Types are: RQ = Required, AA = Added Advantage? Actually the footnote paragraph is not a heading but a paragraph. The table after that maybe not a heading. We should treat each strong heading as

              . The list items under each heading should be
              • . For the tables, we need to represent them as something. Since they are not lists, we could wrap each row in

                or maybe

                containing the cells separated by something? But we must preserve content word-for-word; we can just output each cell's text as separate

                lines? That would add extra breaks but not change the words. However, we might lose the tabular structure but that's okay as long as we keep the words. Better: For each table, we can output a

                containing the rows separated by line breaks? But line breaks are not in original visible text (the original had table layout). Adding line breaks might be considered adding content? Not sure. Safer: treat each cell's text as a separate

                but that would split words that were originally in same line? Actually original table cells are separate; putting each cell in its own

                would change visual grouping but not the words themselves. The instruction only cares about word-for-word content, not layout. So it's probably acceptable. Alternatively, we could wrap the entire table content in a

                preserving the original spacing? But original had table tags; we could just output the text as is, without any extra words, but we need to wrap in

                tags for paragraphs. So we could output a single

                containing all the table text concatenated with spaces as they appear? That would be hard to reconstruct. Simplify: For each table, we will output each row as a

                with the cells separated by " | " to mimic original? But that adds characters not originally present (the pipe and spaces). That would change content. Not allowed. Thus we must not add any characters that weren't in the original visible text. So we cannot insert punctuation like pipes. Thus we need to output the exact sequence of words and spaces as they appear in the original visible text, but we can wrap them in tags. The original visible text of the table is: the header words "Particulars Detail Specific Field or Qualification Need Type" then newline? Actually the table cells are separated by whitespace? In HTML rendering, cells are separated by spaces? Not sure. The visible text likely appears as: Particulars Detail Specific Field or Qualification Need Type Education Bachelors Degree Any computer related RQ Professional Qualifications Java Certification, Oracle Certification, Enterprise Architecture, ITIL RQ Masters Degree Any computer related, Project Management AA But there may be extra spaces due to padding. However, we cannot guarantee. Given the difficulty, maybe we should treat the table as a series of

                elements each containing the concatenated cell text separated by a single space? That would add spaces that may not be exactly original but maybe acceptable? The instruction is strict: preserve ALL original content word-for-word. Adding or removing spaces changes content. So we must not alter spacing. Thus we need to extract the exact text nodes as they appear, preserving whitespace. The original HTML includes many spaces and newlines inside tags but not visible. The visible text is what the browser renders. Hard to know exactly. Given the complexity, perhaps the expected answer is to simply convert the given HTML to semantic HTML by replacing tags:

                stays

                ,

                  stays
                    ,
                  • stays
                  • ,

                    for headings, and ignore tables and footnotes, just output their text as

                    paragraphs (preserving the inner text). That would keep the words same, just removing table tags. That likely satisfies. Thus we will produce:

                    KEY RESPONSIBILITIES

                    • Contribute application development objectives to the overall IT strategy.
                    • Collaborate with business units to formulate banking products and contribute technical guidance to the procurement process.
                    • Analyze product requirements, design and implementation of scalable backend services using Java and Spring Boot as guided by KCBT policies and industry best practice.
                    • Collaborate with internal stakeholders, such as QA testers, product analysts, and fellow developers to deliver assigned features.
                    • Implement best practice and deploy appropriate tools to manage and govern application development and the IT change process.
                    • Actively engage end-users to assess satisfaction and achieve successful project closure.
                    • Work with functional teams to handover system support skills and documentation and formulate OLA agreements with level 1 support.
                    • Identify and champion innovative solutions that exploit existing business opportunities and mitigate existing risks.
                    • Monitor system performance, troubleshoot complex issues, and implement proactive fixes.
                    • Contribute to Agile ceremonies (planning, grooming, retrospectives) and influence product design.

                    (for the blank   maybe we can output an empty

                    or just omit? The blank paragraph contains a non-breaking space which renders as a space. If we output an empty

                    , we lose that space. But maybe we can output

                    with a space? That adds a space character. The original had   which is a non-breaking space. Outputting a regular space changes the character but still a space. Might be considered altering content. Safer to output

                     

                    but that's an entity, adds characters? It's still a space. But we are not supposed to add any content; we could keep the   as is inside

                    . However, we are not allowed to keep original tags? We can keep the   as text inside

                    . So we can output

                     

                    but that's an HTML entity; the original text had   which is a character. So we can output that same character. We'll just output

                    with a regular space; it's a space char, not exactly same but maybe okay. To be safe, we can output

                     

                    which is the same character. But the instruction: No CSS classes, no inline styles, no
                    s, no
                    tags. Using   is okay as it's just a character. We'll do that. Then

                    DAILY RESPONSIBILITIES

                      ...
                    Then

                     

                    Then

                    MINIMUM POSITION QUALIFICATION REQUIREMENTS

                    Then we have a subheading "Academic & Professional" which is inside an
                    1. . Should we treat that as

                      ? It's a subheading. The instruction: Use

                      for section headers (e.g. Responsibilities, Qualifications, Requirements, Education, Experience, Skills, How to Apply, Key Duties, About the Role). So "Academic & Professional" qualifies as a section header. So we output

                      Academic & Professional

                      Then we have the table. We'll output its content as

                      paragraphs? But there is no paragraph tag originally; we could output each row as

                      but that adds newlines not originally present. However, the original table likely had line breaks between rows. Adding

                      tags is okay as they are block elements; they don't change the text content. The text inside each

                      will be the concatenated cell texts with spaces as they appear in the original? We need to get the exact text of each cell. Let's extract the text of each cell from the HTML: First table:

                      Particulars

                      Detail

            Apply Now ↗

            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 📝

MJC
ECHO
Your MJC Assistant

I'm ECHO, your MJC career assistant. I can help you find jobs, explore career tools, and connect with opportunities across Africa.

How was your experience with ECHO?