About Make Me Visible
Make Me Visible is an advocacy and accountability platform built for people whose experiences have been dismissed, overlooked, or erased by families, professionals, healthcare systems, law enforcement, courts, and other institutions.
We are building technology that helps vulnerable people organize evidence, preserve what happened, maintain continuity, control access to sensitive information, and create a documented path toward protection and accountability.
The platform must be accessible, secure, trauma-aware, and usable by people who may be frightened, exhausted, disabled, working from a phone, or managing hundreds of sensitive documents.
The Opportunity
Make Me Visible is seeking a motivated Full-Stack Software Developer Intern for a fast-paced, hands-on, 3.5-month educational experience.
The intern will receive supervised experience contributing to the design and development of Make Me Visible’s web platform, internal tools, evidence-management workflows, and carefully governed AI-assisted features.
This is not a basic website project. The platform may eventually handle medical records, legal documents, photographs, complaints, correspondence, financial records, and other highly sensitive evidence. Every technical decision must account for privacy, accessibility, security, user control, and the consequences of system failure.
The internship is designed to develop transferable skills in frontend development, backend architecture, databases, authentication, file storage, accessibility, testing, security, documentation, and responsible product development.
The intern’s work will complement Make Me Visible’s development efforts without replacing an employee or assuming unsupervised responsibility for a production system.
What You Will Work On
Frontend Development
- Translate approved Figma designs into responsive interfaces
- Develop reusable components using React, Next.js, TypeScript, HTML, and CSS
- Build clear workflows for intake, evidence uploads, timelines, document organization, and controlled sharing
- Design loading, empty, error, autosave, recovery, and interrupted-session states
- Create interfaces that clearly distinguish private, shared, pending, and revoked information
- Test layouts across desktop, tablet, and mobile devices
- Apply accessibility practices involving keyboard navigation, screen readers, focus management, contrast, readable content, and touch-target sizing
- Revise interfaces in response to design reviews and user feedback
Backend and API Development
- Learn how to structure backend services and APIs using Node.js, Express, or comparable frameworks
- Help develop supervised APIs for users, events, evidence, permissions, and audit activity
- Implement validation and consistent error handling
- Learn how server-side authorization protects data beyond the visible interface
- Help document API behavior, expected inputs, errors, and permission requirements
- Write tests for essential workflows and failure conditions
- Participate in supervised debugging and performance reviews
Databases and File Storage
- Help design data relationships involving users, events, evidence, institutions, people, and access permissions
- Work with PostgreSQL, MySQL, MongoDB, Firebase, or another approved data system
- Learn how sensitive files should be separated from application metadata
- Help develop supervised file-upload, storage, retrieval, and deletion workflows
- Account for interrupted uploads, duplicate files, failed processing, and orphaned records
- Learn how audit histories, timestamps, and file-integrity controls support accountability
- Use synthetic, test, or appropriately redacted data during development unless access to other information is specifically authorized
Authentication, Privacy, and Security
- Help implement authentication, protected routes, session controls, and role-based permissions
- Learn how access must be verified on the server for every sensitive request
- Test whether one user could improperly access another user’s information
- Help identify risks involving public file links, insecure uploads, excessive permissions, leaked secrets, and sensitive information appearing in logs
- Participate in security-focused code reviews
- Follow least-privilege access practices
- Document security concerns promptly rather than silently working around them
- Never upload confidential information to an AI platform, external service, personal repository, or unapproved tool
AI-Assisted Features
- Explore carefully governed AI features that may help users organize, summarize, search, or understand their own information
- Evaluate where AI may produce errors, omit context, reveal sensitive information, or present unsupported conclusions
- Build with human review and user control in mind
- Clearly distinguish AI-generated assistance from verified evidence
- Use only approved tools, data, and development environments
- Help document limitations and safeguards for any AI-assisted feature
Collaboration and Product Development
- Review requirements and Figma designs before beginning implementation
- Identify missing, conflicting, or technically risky requirements
- Break features into manageable development tasks
- Participate in code reviews, design reviews, demonstrations, and planning meetings
- Explain technical decisions in understandable language
- Ask questions when a decision affects privacy, accessibility, security, or vulnerable users
- Maintain accurate documentation of completed work, blockers, testing, and next steps
- Respond to feedback and revise work rather than treating the first version as final
Educational Structure and Supervision
Each intern will receive:
- An Individual Internship Plan identifying technical strengths and learning goals
- Orientation covering the mission, user population, confidentiality, security, and responsible technology development
- Access to approved requirements, designs, development environments, and technical documentation
- Weekly instructional and product-development meetings
- Defined assignments connected to specific learning objectives
- Regular review from a designated supervisor
- Code review and substantive technical feedback
- Opportunities to correct and improve work
- A midpoint evaluation and final skills assessment
- Coordination with an academic institution when credit is requested
- A final summary of the technical competencies demonstrated during the internship
Internship Milestones
Weeks 1–2: Orientation and Technical Planning
- Complete confidentiality and security orientation
- Review the product requirements and Figma designs
- Set up the approved development environment
- Review the existing codebase and documentation
- Map one core user journey
- Identify technical risks, accessibility concerns, and unanswered requirements
- Establish an Individual Internship Plan
Weeks 3–5: Design System and Frontend Foundations
- Build or improve reusable interface components
- Implement responsive layouts for a selected workflow
- Add loading, empty, validation, and error states
- Test keyboard navigation and basic screen-reader behavior
- Present the work for review and revise it based on feedback
Weeks 6–9: Supervised Full-Stack Workflow
- Connect one approved user flow across the frontend, backend, and database
- Implement server-side validation and permission checks
- Add clear recovery behavior for failed or interrupted actions
- Write tests for the primary workflow and important failure conditions
- Demonstrate the completed vertical slice in a supervised review
Weeks 10–12: Testing, Security, and Accessibility
- Test the workflow across supported devices and browsers
- Review authentication and permission boundaries
- Identify accessibility and usability gaps
- Address documented defects
- Improve technical documentation and test coverage
- Participate in a structured security and privacy review
Weeks 13–15: Capstone and Professional Development
- Complete an approved feature, prototype, or vertical slice
- Prepare a technical walkthrough explaining the architecture and decisions
- Document setup, testing, limitations, and recommended next steps
- Complete a final skills assessment
- Produce a portfolio-appropriate description or demonstration using only approved, nonconfidential information
- Complete a responsible code and documentation handoff
Measurable Learning Deliverables
By the end of the 3.5-month internship, the intern should be able to demonstrate meaningful progress through completed work such as:
- A documented technical implementation plan
- A reusable set of responsive and accessible interface components
- One supervised end-to-end workflow
- Appropriate loading, error, empty, and recovery states
- Server-side validation and permission checks for the selected workflow
- Automated tests covering essential behavior
- Accessibility and security review notes
- Setup and architecture documentation
- A final capstone demonstration
- A responsible code and documentation handoff
- Documented improvement between the initial and final skills assessments
Features may be considered for production use only after technical review, testing, and approval. Deployment to production, user adoption, funding, and other outcomes controlled by third parties cannot be guaranteed and will not be the sole measure of intern performance.
Preferred Qualifications
- Currently pursuing or recently completed a degree in Computer Science, Software Engineering, Information Systems, Human-Computer Interaction, UX Engineering, or a related field
- Experience building a working frontend or full-stack application
- Familiarity with JavaScript or TypeScript
- Experience with React or Next.js
- Familiarity with Node.js, Express, or comparable backend frameworks
- Experience with REST APIs
- Familiarity with SQL or NoSQL databases
- Experience using Git and GitHub
- Understanding of responsive design and reusable components
- Interest in accessibility, privacy, security, and responsible technology
- Experience with Vercel, AWS, Azure, Google Cloud, Firebase, or another deployment platform is helpful
- Experience with authentication, file storage, AI APIs, or automated testing is helpful
- Strong problem-solving and communication skills
- Willingness to identify uncertainty and ask questions before making high-risk decisions
Applicants do not need to claim expertise in every area. We value honesty about current strengths, learning needs, and individual contributions to previous projects.
What You Will Gain
This internship provides supervised experience in:
- Building technology for a complex, mission-driven platform
- Translating Figma designs and requirements into working interfaces
- Developing reusable frontend components
- Connecting frontend workflows to APIs and databases
- Designing for disabled and vulnerable users
- Understanding authentication, permissions, and private file access
- Testing failure states and recovery workflows
- Participating in code reviews and technical planning
- Working with modern development frameworks
- Evaluating the responsible use of AI
- Documenting architecture, decisions, and limitations
- Developing portfolio-appropriate work
- Explaining technical decisions to both technical and nontechnical stakeholders
- Receiving detailed feedback and improving work through revision
By the conclusion of the internship, participants should leave with stronger technical judgment, practical development experience, tangible evidence of their abilities, and a deeper understanding of what it means to build technology when reliability, privacy, and accessibility directly affect human safety.
Important Internship Boundaries
The intern will not:
- Independently control or administer the production environment
- Deploy production changes without review and authorization
- Make final security, privacy, legal, or compliance decisions
- Access sensitive information beyond the approved scope
- Place confidential information in personal repositories or accounts
- Share source code, credentials, case materials, or internal documentation outside Make Me Visible
- Use confidential information with unapproved AI tools or third-party services
- Represent themselves as an employee, officer, security professional, attorney, or authorized spokesperson
- Replace the work of a paid employee
The internship does not create an entitlement to future employment. Either party may end the internship in accordance with the written internship agreement. Confidentiality, return of access, transfer of work, and deletion of protected materials remain required at departure.
What Success Looks Like
Success means the intern can demonstrate that they:
- Understand the user problem before beginning implementation
- Translate requirements into an organized technical plan
- Build maintainable and accessible components
- Connect one important workflow across the application
- Test both successful and failed user paths
- Identify security and privacy risks instead of ignoring them
- Communicate blockers before they threaten a milestone
- Accept feedback and improve the work
- Document what was built, what remains incomplete, and what should happen next
- Complete a responsible handoff
Ideal Candidate
The strongest candidate enjoys solving complicated problems, learns quickly, communicates honestly, and takes ownership of agreed assignments without waiting for every step to be dictated.
They understand that initiative does not mean making unauthorized decisions. It means investigating the problem, proposing a thoughtful path forward, raising risks promptly, and continuing to work constructively when the first approach fails.
This opportunity is best suited for someone who wants meaningful, supervised startup experience while contributing to technology designed to protect people who have been left without continuity, visibility, or institutional support.
