const jayesh: SoftwareEngineer = {
role: "Software Engineer",
company: "Valtech",
location: "Ahmedabad, India",
experience: "10+ years",
skills: ["JavaScript", "TypeScript", "React", "Next.js", "Node.js", "Express",
"HTML", "CSS", "AI / LLM integration"],
specialty: ["Microfrontends", "Module Federation", "Nx Monorepo"],
domains: ["FinTech", "Real Estate", "Enterprise SaaS", "E-commerce", "Security", "Mobility"],
alsoDoes: ["Mentoring juniors", "Leading cross-functional teams"],
};| Languages |
|
| Frameworks |
|
| Backend |
|
| Architecture |
|
| AI |
|
The thing I'm best at is splitting a large frontend into pieces teams can own and deploy independently — without the shared layer rotting.
flowchart TD
U([👥 Users]) --> S["🧭 Host / Shell App<br/><i>routing · auth · layout</i>"]
S --> A["Remote A<br/><i>Domain team</i>"]
S --> B["Remote B<br/><i>Domain team</i>"]
S --> C["Remote C<br/><i>Domain team</i>"]
A --> DS["📦 Shared Design System<br/><i>versioned contracts</i>"]
B --> DS
C --> DS
DS --> N["⚙️ Nx Monorepo<br/><i>affected builds · module boundaries · CI</i>"]
style U fill:#0EA5E9,stroke:#0EA5E9,color:#fff
style S fill:#1E3A8A,stroke:#0EA5E9,color:#fff
style DS fill:#0F172A,stroke:#0EA5E9,color:#fff
style N fill:#0F172A,stroke:#0EA5E9,color:#fff
The hard parts I've actually had to solve — shared dependency versioning across remotes · keeping module boundaries enforced rather than aspirational · stopping a design system from forking into three near-identical copies.
+ Small PRs, with a screenshot or recording for anything visual
+ Tests around shared logic, state, and API contracts — not coverage theatre
+ Trade-offs written down when the decision isn't obvious
+ Accessibility and loading states are part of "done"
- Not a fan of: big-bang refactors, or abstractions invented before the third use case▸ Dependency-sharing and versioning strategies across independently deployed remotes
▸ React Server Components and streaming for content-heavy Next.js apps
