feat/job-energy
needs attentionviewing older commit66b7423 · incrementalpre-PRreviewed 2026-08-03 19:09 UTC0H · 2M · 5L · 4I- Purpose
- Add Energy Strategist job posting to the Batu marketing site — the company's first commercial hire
- Goal
- Publish a detailed, SEO-optimised job posting at /carreras/energy-strategist and link it from the careers listing
- Sub-goals
- SG-1: New job page at /carreras/energy-strategist with JobPosting JSON-LD
- SG-2: Add card to careers listing page (/carreras)
- SG-3: Add route to sitemap.ts
- SG-4: Update screening step copy to state compensation range is shared upfront
- What
- Added 666-line Energy Strategist job posting page with full structured data, updated careers listing with a new card, added sitemap entry, and in this commit updated the screening step text to explicitly state the compensation range is shared during the call
- Why
- First commercial hire for Batu — opening the enterprise/large-consumer energy segment. Incremental change improves candidate transparency by stating compensation range is disclosed upfront.
- Areas
- apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx+666−0apps/web/src/app/(marketing)/carreras/page.tsx+21−0apps/web/src/app/sitemap.ts+1−0
- Blast
- 3 files, +688/−0. Web-only, no backend changes. New public marketing route.
Findings · 11
correctness1
Correctness: pass
No correctness issues. The updated screening copy is clear and accurate.
conventions3
Title suffix doesn't match `| Batu` convention
apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx
Convention requires keyword-first with `| Batu` suffix. Current title 'Energy Strategist | Carreras Batu Energy' uses a longer sub-section suffix. Should be e.g. 'Energy Strategist | Batu Energy' or 'Energy Strategist | Batu'. At 40 chars it's within the 60-char cap, but the pattern deviates from the standard.
JobPosting schema: experienceRequirements.monthsOfExperience: 0 may misrepresent range
apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx
Page shows '0–2 años' but schema reports 0 months. Google's structured data guidelines require visible content to match schema. Schema.org supports a single integer; consider setting 24 (upper bound) or replacing with a descriptive string ('Entre 0 y 2 años').
Hardcoded validThrough: confirm expiry date won't go stale
apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx
validThrough is hardcoded as '2026-10-02'. A past validThrough causes Google to de-index the JobPosting rich result. Add a code comment or tracking ticket to update this when the posting is extended.
improvement2
Job page structure not shared with existing full-stack-engineer page
apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx
A second standalone 666-line job page duplicates the layout from full-stack-engineer-ai-native. A third posting would make extraction worthwhile. Track for when a third job is added.
Inconsistent object formatting in process array after this change
apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx
Step 01 is now multi-line while later steps remain inline. Minor cosmetic inconsistency — no functional impact.
seo5
Description is 179 chars — exceeds 160-char ceiling
apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx
The metadata description is 179 characters. Google truncates snippets around 155–160 chars, so 'Híbrido CDMX.' will be cut in SERPs. Trim to ≤160 chars to control the displayed snippet. Note: logo.png verified to exist at public/logo.png.
Missing `baseSalary` in JobPosting — optional but improves Google Jobs richness
apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx
The updated screening step now explicitly states the salary range is shared in the call. If the range is intentionally withheld from the public page, omission is acceptable. If a range can be published, adding `baseSalary` as a MonetaryAmount improves Google Jobs prominence.
No BreadcrumbList structured data for nested route
apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx
CLAUDE.md recommends BreadcrumbList for nested routes. Adding Inicio → Carreras → Energy Strategist would display breadcrumbs in SERPs instead of raw URL. Low priority — the existing full-stack-engineer page also lacks it.
Title suffix: `| Carreras Batu Energy` vs `| Batu` convention
apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx
Minor deviation noted by both conventions and SEO lenses. The longer suffix adds navigational context for the careers section. Consistent with how other job pages are titled. Standardize eventually but not blocking.
Incremental diff is SEO-neutral
apps/web/src/app/(marketing)/carreras/energy-strategist/page.tsx
The change updates only body copy inside the process array (screening step detail text). No metadata, structured data, or crawlability impact.