Jobs · Ohio

Principal ML Engineer

Mimecast · Columbus, OH · 1 mo ago
Hybrid$172k–$258k/yrFull-time
We need to output HTML fragment with headings

for sections: About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule. Only include sections that have real specific content. We must not repeat job title as heading. Must not include Job ID etc. Remove boilerplate. We need to parse the posting. Sections present: - About Mimecast (intro) maybe not needed? The instruction: Use

for section headings (e.g. About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule). So we can have "About the role" heading for overview? The posting has "Overview" after "About Mimecast". Could treat as About the role. - Responsibilities: "What You'll Do" list. - Requirements: maybe "What You'll Bring" includes many items; could be split into Requirements, Qualifications, Skills. We need to decide. We have Qualifications: Ph.D. or Master's degree etc. Skills: list of technical proficiencies. Benefits: mention "plus benefits" but not detailed; we should not create Benefits section unless posting actually states them. It says "plus benefits" but no detail. Likely we should not create Benefits section because no specific benefits listed. Pay: salary range given: $172,000 - $258,000 USD plus benefits. So we can include Pay section with that range. Schedule: mention "Employees are expected to work from the office at least two days per week." That's schedule info. So we can include Schedule section. We must not include filler like "commensurate with experience". Not present. We need to preserve all substantive information. Let's extract content. About the role: Could combine "About Mimecast" paragraph and "Overview". We'll put under

About the role

with paragraphs. Responsibilities: list from "What You'll Do". Each bullet as
  • . Requirements: maybe we can include "What You'll Bring" but split into Requirements (maybe mandatory experience) and Qualifications (education) and Skills (technical). However we need to avoid thin sections. Could combine Requirements and Qualifications into one? But instruction says prefer few substantive sections over many thin ones. We could have sections: About the role, Responsibilities, Requirements (including experience, education, skills), Pay, Schedule. That seems reasonable. But we need to follow the allowed headings list; we can use any of those headings. Using Requirements to cover experience, education, skills. Pay and Schedule separate. Let's extract Requirements content: From "What You'll Bring": - Breadth across transformer architectures, RNNs, CNNs, generalized linear models, and gradient-boosted trees, with the judgment to select the right approach for the problem rather than defaulting to the largest model. - Deep Python proficiency and strong command of PyTorch, Hugging Face transformers, and NLP tooling, plus working knowledge of ONNX Runtime, quantization such as FP16, and inference acceleration. - Experience with dense and lexical retrieval, including embeddings, vector indexes and approximate nearest-neighbor search, BM25, TF-IDF, and hybrid approaches. - Experience working with datasets exceeding two million examples and highly imbalanced data, using rigorous evaluation methods for precision and recall trade-offs, threshold selection, and test-set leakage prevention. - A track record of owning production ML systems on AWS, including SageMaker, S3, Athena, Lambda, Glue, Kinesis, and Bedrock, with Terraform, IAM, containers, and Kubernetes-based deployment. - Working knowledge of model-serving frameworks such as TorchServe, FastAPI, and NVIDIA Triton Inference Server/KServe, and the trade-offs among throughput, GPU efficiency, flexibility, and speed of iteration. - Hands-on experience running CUDA workloads in production, including driver, toolkit, and runtime alignment; GPU passthrough in containers; debugging GPU failures; and improving GPU utilization. - Fluency with AI-native development tools and modern LLM application patterns, including OpenAI-style chat-completion and structured tool/function-calling APIs, MCP, and agent frameworks. - Demonstrated technical leadership as an individual contributor, including setting direction, mentoring engineers across seniority levels, and communicating technical decisions and their business implications to technical and executive audiences. - An understanding of handling sensitive data in accordance with Master Service Agreements and compliance requirements. - A Ph.D. or Master's degree in a quantitative discipline, such as computer science, statistics, or mathematics, with substantial experience applying advanced ML to production problems; or equivalent depth demonstrated through a Bachelor's degree and a longer track record. - We value demonstrated technical authority over a specific year count. Also mention "Employees are expected to work from the office at least two days per week." That's schedule. Pay: "The base salary range for this position is $172,000 - $258,000 USD plus benefits. This range represents the minimum and maximum new hire compensation for this role. The position may also be eligible for incentive plans and additional benefits, in accordance with company policy and local regulations. Our salary ranges are determined by role, level, and location with individual compensation also dependent on factors such as qualifications, experience, and skills. Final offers will reflect these considerations and may vary accordingly." We can summarize but must preserve all substantive information; we can keep the sentences. Now About the role: combine "About Mimecast" paragraph and "Overview". Let's extract: About Mimecast: "The work people build is worth protecting, and it's harder to protect than it used to be. AI agents now move at machine speed with human-level access, and a small slip-up can become a very public one. We disrupt cybercriminal activity before that happens. We think fast, go big, and always demand more of ourselves. We work hard, deliver, and repeat. We grow with real determination and put success well within reach. We push each other to be better and expect to be pushed back, in a community built on respect, where everyone is counted. Work Protected." Overview: "As a Principal Machine Learning Engineer, you will set technical direction for Mimecast's ML capabilities, including our GCI products or advanced email threat-detection products. This is a senior individual-contributor role: you will own the hardest modeling and systems problems end to end, define the architecture other engineers build on, and be a technical authority for product and engineering leadership when the direction is not obvious. Our threat ML runs on Mimecast's shared AI enrichment platform, the detection and extraction infrastructure serving models across the product suite. You will work at the intersection of applied ML, production model serving, and cross-team integration, making architectural decisions that hold up under production load and customer commitments. Mimecast is an AI-first engineering organization. You will use AI development tools, including Claude Code, Cursor, and MCP integrations, in your daily work and establish the workflows, patterns, and quality bar for the team. You will also design product systems using LLM and agent-based patterns. Employees are expected to work from the office at least two days per week. This fosters collaboration, communication, performance, and learning; drives innovation and creativity within and between teams; introduces employees to priorities beyond their immediate realm; and supports important interpersonal relationships and connections." Note the schedule sentence appears also in Overview; but we will put schedule separately. Might duplicate; but we need to preserve all info; we can keep schedule in Schedule section and maybe not repeat in About the role. However the Overview includes that sentence; we could keep it there but then schedule section would be duplicate. Better to keep schedule only in Schedule section and omit from Overview? But we must preserve ALL substantive information; removing it would lose info. We could keep it in Overview and also have Schedule section referencing same info; but that would duplicate. The instruction: "Preserve ALL substantive information; do NOT invent or summarize away detail." Duplication is not prohibited but might be redundant. Safer to keep it in Overview and also have Schedule section? Might be considered duplication but still preserving. However they said "Prefer a few substantive sections over many thin ones." Duplication may be okay but could be considered thin. I think we can keep schedule info only in Schedule section and not repeat in Overview; but then we lose that sentence from Overview. However the Overview paragraph includes that sentence; we could edit Overview to exclude that sentence, but that would be removing substantive info. Not allowed. Thus we need to keep that sentence somewhere. We could keep it in Overview and also have Schedule section that maybe just says "Employees are expected to work from the office at least two days per week." That duplicates but preserves. Might be okay. Alternatively we could move the schedule sentence to Schedule section and keep Overview without it, but that would be removing from Overview (which is part of the posting). However the Overview is a section; we could treat Overview as part of About the role; we could keep the Overview paragraph but remove the schedule sentence from it, but that's altering the posting. Not allowed. Thus we need to keep the sentence in the About the role section (or Overview) and also have a Schedule section that maybe just says "See above" but that would be summarizing. Better to keep schedule info only in Schedule section and not include in About the role; but then we lose it from About the role. However the About the role section is not required to be verbatim; we just need to preserve all substantive information somewhere. If we put schedule info in Schedule section, we have preserved it. The About the role section can be the rest of the Overview without that sentence; but we removed it from Overview, which is part of the posting. However the posting's Overview includes that sentence; if we omit it, we are not preserving that piece of information in the About the role section, but we have it elsewhere. The instruction: "Preserve ALL substantive information; do NOT invent or summarize away detail." As long as the information appears somewhere in the output, it's preserved. So we can omit it from About the role and place it in Schedule. That's fine. Thus we will not include the schedule sentence in About the role. Now we need to ensure we don't include boilerplate like EEO etc. Remove those. Now craft HTML. We'll have:

    About the role

    About Mimecast paragraph...

    Overview paragraph (without schedule sentence). We'll need to copy Overview but remove the schedule sentence. Let's copy Overview text and manually remove the sentence: "Employees are expected to work from the office at least two days per week. This fosters collaboration, communication, performance, and learning; drives innovation and creativity within and between teams; introduces employees to priorities beyond their immediate realm; and supports important interpersonal relationships and connections." We'll keep the rest before that sentence. Overview before that sentence: "As a Principal Machine Learning Engineer, you will set technical direction for Mimecast's ML capabilities, including our GCI products or advanced email threat-detection products. This is a senior individual-contributor role: you will own the hardest modeling and systems problems end to end, define the architecture other engineers build on, and be a technical authority for product and engineering leadership when the direction is not obvious. Our threat ML runs on Mimecast's shared AI enrichment platform, the detection and extraction infrastructure serving models across the product suite. You will work at the intersection of applied ML, production model serving, and cross-team integration, making architectural decisions that hold up under production load and customer commitments. Mimecast is an AI-first engineering organization. You will use AI development tools, including Claude Code, Cursor, and MCP integrations, in your daily work and establish the workflows, patterns, and quality bar for the team. You will also design product systems using LLM and agent-based patterns." Now after that, we stop. Now Responsibilities: list from "What You'll Do". We'll copy each bullet. Responsibilities bullets: - Develop and own ML systems end to end, from data sourcing, cleaning, and labeling strategy through feature engineering, model development, deployment, and monitoring. - Set the ML architecture across model design, serving, and surrounding systems, optimizing accuracy, latency, and throughput for highly imbalanced threat-detection data. - Set technical direction for production model serving using AWS SageMaker, NVIDIA Triton In

  • Similar jobs

    Principal ML Engineer

    Prodege, LLCUnited States· 3 mo ago
    RemoteEngineering$300k–$375k/yrapply on prodege.wd108.myworkdayjobs.com