Thank you for considering a career with the Research Foundation of The City University of New York (RFCUNY).
The team at RFCUNY is made up of dedicated, talented professionals committed to providing the services that allow CUNY researchers, faculty, and staff to focus on their intellectual curiosity and scientific discoveries.
We are pleased that you are interested in exploring opportunities to join RFCUNY.
Primary Location:
BOROUGH OF MANHATTAN C. C.
Bargaining Unit:
No
About the NYC Tech Talent Pipeline (TTP):
TTP is a public\-private partnership, launched by the Mayor’s Office in May 2014 to support the growth of the NYC tech sector and prepare New Yorkers across the five boroughs for 21st\-century jobs. The Tech Talent Pipeline works with public and private partners to define employer needs, develop and test training and education solutions, and scale solutions throughout New York City, delivering quality talent for the City’s businesses and quality jobs for New Yorkers.
The Tech Talent Pipeline Residency ( TTPR ), a training and internship placement program for a cohort of computer science undergraduates of CUNY BMCC, is seeking an experienced Fullstack Web Development Lead Instructor to deliver specialized software engineering curriculum and training in the form of curriculum prep and a software engineering coding bootcamp for TTPR. This role is ideal for individuals who possess a deep passion for teaching and a commitment to expanding access to the tech industry. This position is available as of April 2026 and will be terminated at the end of the funding period. We will also be hiring: 1 Lead Teaching Assistant, 4 Teaching Assistants, and 2 Peer Tutors.
Anticipated Start : 4 May 2026 (curriculum prep begins)
Anticipated End : 21 August 2026 (bootcamp ends)
Program Supported : TTP Residency @ BMCC
Reports To : TTPR Program Manager
Weeks (12\)
Week 1: Warp, Cursor, Claude Code \+ HTML/CSS/JS/Git (Solo Git)
Week 2: Codex, Claude Cowork \+ HTML/CSS/JS/Git (Collaborative Git)
Week 3: ReactJS \+ APIs
Week 4: Server
Week 5: Database
Week 6: Client\-Side Routing \+ Review
Week 7: CRUD (Solo) \+ Deployment \+ Security
Week 8: Capstone I (Groups of 4\)
Week 9: Capstone II (Groups of 4\)
Week 10: Capstone III (Groups of 4\)
Week 11: Capstone III (Groups of 4\)
Week 12: Capstone III (Groups of 4\) \+ Demo Day
Lead Instructor Duties
- Prepare and maintain curriculum materials, including slides, footnotes, sample code, and instructor\-created or curated videos.
- Deliver lectures and facilitate engaging learning experiences for students.
- Manage course\-related tools, including GitHub repositories, cloud spreadsheets for homework, classwork, and capstone project submissions, EOW Weekly Meeting Notes, and the licensed Zoom account.
- Assign student groups for non\-capstone projects using fair and consistent methods (first name, last name, even/odd, or randomization); capstone group assignments are handled by the Program Manager by default.
- Upload class recordings to YouTube (unlisted or private) for student access.
- Lead weekly instructional staff meetings and coordinate with team members to ensure smooth delivery of training.
- Administer student exit surveys and gather feedback to improve the program.
- Serve as Scrum Master for all capstone projects, supporting teams in agile workflows and project management.
- Conduct brief end\-of\-day announcements and remind students about mandatory office hour (if applicable) as well as continuing to work together on the assignments, including daily retrospectives and reflections focused on training outcomes (e.g., “roses and thorns”).
- Assign and self\-assign instructional staff to mandatory office hour pairs for student support.
- Record attendance if the Lead Teaching Assistant is out\-of\-office.
- Review the material to prepare for help tickets
- Provide resources to students for technical knowledge and technical skillset support
- Complete help tickets for troubleshooting: tool installation, tool configuration, problem\-solving related to in\-class assignments, homework assignments, or capstone projects
- Identify blockers for a student's project
- Guide students to verbalize their thought process
- Unblock students through advisement, technical project management techniques, or by escalating to another instructional staff member
- Function as a scrum master for capstone projects and also contribute to brainstorming about frontend design, file structure, and project scope (you might be asked to diagram on a whiteboard when in\-person or a digital whiteboard when remote)
- Participate in 1 weekly sync up meeting with the instructional staff by default, and with the program manager if available
- Review if a classwork or homework submission was submitted with: a link, an accessible link, a link to the proper project, time of last commit, sum of commits, and amount of commits per group member (use Trello?)
- Hold a mandatory office hour M\-Th (no office hour on Friday) (two thirty\-minute segments)
- Track individual aggregate contributions at the end of each capstone project by commit history, by copying and pasting it into an internal document
- Flag areas of improvement in student progress within an internal document
- Proctor monthly quiz with assigned students
- Conduct exit interview with assigned students
- Improvising deadlines (including if polling the students is the best way to adjust)
- Improvising the agenda/schedule/EOD announcements, especially on or around challenging topics or demo day, or any mandatory staff member\-trainee pair programming/office hour/code review
- Improvising, for example, by adapting support dynamically; for example, if inbound help tickets drop to zero during capstones, shifting to a proactive, outbound model by regularly checking in and providing support across all groups on a consistent, responsive cadence
- Building students’ self\-efficacy
- Guiding students through the pace and intensity of a bootcamp
- Facilitating capstone topic ideation
- Developing students’ first\-principles programming skills alongside AI\-assisted approaches, balancing foundational understanding with practical outcomes
- Clarifying the limitations of third\-party APIs
- Supporting students in intermediate capstone concepts and implementations, including but not limited to: WebSockets, task scheduling (cron jobs), service workers for offline/background syncing, throttling, debouncing, caching, WebRTC, pagination, filters, sorts, searches, etc.
- A degree or alternative education in computer science or related fields
- Experience delivering computer science or software engineering instruction (including live debugging), or substantial professional software engineering experience that demonstrates equivalent (or greater) capability
- Proficient in fullstack web development (HTML, CSS, JavaScript, Node, Express, React, Redux, Relational DBMS, ORMs)
- Proficient in developer tools such as CLI/Terminal, Postman, VS Code, Postico, pgAdmin
- Proficient in a project management tool(s) such as Jira, ClickUp, Monday, Asana, Notion, or Trello
- Proficient in industry\-standard Git workflows and GitHub (GitHub Projects, GitHub Pages)
- Proficient in developer operations as it pertains to CI/CD and/or deployment/hosting using Netlify and/or Vercel
- Familiarity with: implementation details of Open Authorization protocol
- Prior experience working at a Software Engineering/Cybersecurity/Data Science Bootcamp, an instructional (technical) role in a CUNY or CUNY\-related program, or as a collegiate adjunct for a computer science course
- Familiarity with: Figma, Lucidchart, Tailwind, Bulma, Rate Limiting, Hashing/Salting, CORS
- Familiarity of: AWS/GCP/Azure, Firebase, UI/UX principles, React Native, TypeScript
- Prior experience as an apprentice, intern, freelance, associate, junior, or senior software engineer
- Prior experience as a or in: solutions engineer, sales engineer, quality assurance, quality engineer, software development engineer in test (SDET), scrum master, or UI/UX and Graphic Design \& Digital Design
- Prior experience in other fields such as but not limited to: Data Engineering, Data Science,
- Cybersecurity, Artificial Intelligence
- Prior experience with: hackathons, open\-source contribution, bug bounties, published scholarly works and research, computer science degree, TA/SI equivalent during undergraduate or graduate studies
- Async virtual curriculum prep
- EOW virtual check\-in with Program Manager
- Going to campus to secure work email and keycard, facilitated by Program Manager
- 0 work
- 0 classes
- Applicable holiday benefits
- 10:00AM \- 12:00PM: Lecture ( attendance taken at 10:15AM by Lead Teaching Assistant )
- 12:00PM \- 1:00PM: Lunch
- 1:00PM \- 3:50PM: Project Work \+ Help Tickets
- 3:50PM \- 4:00PM: EOD Announcements
- 4:00PM \- 4:30PM: Mandatory “Office Hour” w/Student A
- 4:30PM \- 5:00PM: Mandatory “Office Hour” w/Student B
- 5:00PM \- 6:00PM: Curriculum Refinement or Survey/Quiz Prep
- 10:00AM \- 12:00PM: Lecture ( attendance taken at 10:15AM by Lead Teaching Assistant )
- 12:00PM \- 1:00PM: Lunch
- 1:00PM \- 3:00PM: Project Work \+ Help Tickets
- 3:00PM \- 4:00PM: EOW Weekly Instructional Staff Meeting
- 4:00PM \- 5:00PM: Project Work \+ Help Tickets ( without teaching assistants and peer tutors)
- 5:00PM \- 6:00PM: Curriculum Refinement or Survey/Quiz Prep
- 10:00AM \- 12:00PM: Project Work \+ Help Tickets ( attendance taken at 10:15AM by Lead Teaching Assistant )
- 12:00PM \- 1:00PM: Lunch
- 1:00PM \- 1:15PM: Daily Standup
- 1:15PM \- 3:45PM: Project Work \+ Help Tickets
- 3:45PM \- 4:15PM: Pair Programming or Code Review (Frontend) (Becomes optional in final project)
- 4:15PM \- 4:45PM: Pair Programming or Code Review (Backend) (Becomes optional in final project)
- 4:45PM \- 5:00PM: EOD Announcements
- 5:00PM \- 6:00PM: Curriculum Refinement or Survey/Quiz Prep
- 10:00AM \- 12:00PM: Project Work \+ Help Tickets ( attendance taken at 10:15AM by Lead Teaching Assistant )
- 12:00PM \- 1:00PM: Lunch
- 1:00PM \- 1:15PM: Daily Standup
- 1:15PM \- 1:45PM: Pair Programming (Frontend) or Code Review (Becomes optional in final project)
- 1:45PM \- 2:15PM: Pair Programming (Backend) or Code Review (Becomes optional in final project)
- 2:15PM \- 4:45PM: Project Work \+ Help Tickets ( teaching assistants and peer tutors exit at 4:00PM)
- 4:45PM \- 5:00PM: EOD Announcements
- 5:00PM \- 6:00PM: Curriculum Refinement or Survey/Quiz Prep
- 10:00AM \- 12:00PM: Prepare students for the event, and classroom\-wide retrospective
- 12:00PM \- 1:00PM: Lunch
- 1:00PM \- 4:00PM: Demo ceremony, demos, and instructional staff farewells
- 4:00PM: Event’s end
- 4:00PM \- 6:00PM: Exit Interview/Bootcamp Wrap\-up
Instructional Staff Standard Duties
Other Duties and Expectations :
REQUIRED SKILLS
PREFERRED SKILLS
DESIRED SKILLS
We value candidates who understand and connect with the experiences of students in public and access\-focused higher education systems (CUNY), whether through their own academic background or professional work. The ideal candidate has a background in the training model we use (web development coding bootcamp flagship graduate or web development coding bootcamp flagship instructor) along with the specific technology stack that we train (PERN) and has held the role of a professional Senior Software Engineer with directly relevant hands\-on work experience. If your experience doesn’t perfectly match but you believe you’d be a strong fit, we encourage you to apply.
Examples of bugs you should be able to troubleshoot:
1: A student says: “node \-v isn't working” and you inform them that nodeJS is not yet installed.
2: A student is running their client code on one local server (Port 3000\) and their backend code on another local server (Port 1234\). With respect to Port 3000, they make an AJAX request through their browser to the local server on Port 1234\. The student receives a CORS error. They send the same request through Postman. The student does not receive a CORS error. They put in a help ticket to have a thorough understanding of why this is happening, as well as some possible solutions (forward proxy or whitelisting).
3: A student puts in a help ticket to install postgres on a device running Mac OS. Another student puts in a help ticket to install postgres on a device running Windows OS.
4: A student wants to practice responsive web design, so they take ownership of some open issues on their GitHub project management board for it. They accidentally use a media feature incorrectly such as using min\-width versus max\-width. You must be able to help them identify this mix up, and provide a solution as to why the style never applied to the intended screen, in a constructive and effective way.
5: A student sets up Okta’s Auth0, however the first login fails despite it working upon refresh. It is up to you to discuss with the student, articulate the solution, and if necessary, share the working code.
6: A student puts in a help ticket that just reads as “getting error: detached HEAD state, please help in breakout room 8”. You should be able to explain to them git’s provided auto\-message describing what a detached HEAD state is, that it does not classify as an error, and what is actually happening. Further, you should be able to explain when it is useful and when it is not useful for a student’s immediate purposes, especially if they reached that point in the terminal inadvertently. Be able to explain to them that their pointer is pointing to a commit and not to a branch, how that differentiation is operationally relevant, and how to configure the pointer to point back to a branch if that is their intention.
7: A student is making a POST request through Postman. Turns out, they are using “body \-\> raw \-\> Text” when they are in fact trying to send the JSON representation of their React Form stored on React State. This is confusing to them, because they are not getting an error, just a blank response displaying on Postman. Everything looks fine, nothing crashes, but it is a silent bug. Server\-side, express is configured such that: “app.use(express.json())” for parsing request bodies. From here, you should be able to debug with them such that they instead use ““body \-\> raw \-\> JSON” in order for the request to be properly formatted for their purposes, resulting in what they initially anticipated to see from a successful request\-response ‘cycle’ through Postman.
8: A student understands how to use git stash and git stash apply as a tool, but they do not fully understand what’s happening under\-the\-hood. They just ‘have a feeling’ of when to use them, and have so far been right each time, but they would like to ‘have an understanding’ of it in a first\-principles way. You should be able to explain to them that “git stash” takes a snapshot and hides it off\-branch and then “git stash apply” replays that snapshot as a patch onto current code. You do not need to go into how the stash is a stack, but just provide the clear reasoning about its use case.
9: Be able to extensively explain either during lecture, a help ticket, or an office hour about the distinct ‘zones’ in git such as: working directory, staging area, local repository, and remote repository, especially if a student either is trying to run a terminal command not applicable to that particular zone or if a student wonders why they have to still do “git pull” after pushing to the remote branch and merging onto main on the remote repository. They should be able to both execute the workflow and understand it, through you.
Run\-through of Project Appointment:
Curriculum Prep (May 4 to May 29\):
A Holiday (Memorial Day, Juneteenth, Observation of Independence Day)
Monday \- Thursday (June 1 to August 21\): Modality \= BMCC Campus
Fridays (June 1 to August 21\) : Modality \= Remote ( Demo Day will be at BMCC Campus)
A Non\-Capstone Monday, Tuesday, Wednesday, Thursday (June 1 to July 17\):
A Non\-Capstone Friday (June 1 to July 17\):
A Capstone Monday, Tuesday, Wednesday, Thursday (July 20 to August 20\):
A Capstone Friday (July 20 to August 20\):
Demo Day (August 21\) :
Technology Stack and Tools
HTML
CSS
JavaScript
Node
Express
ReactJS (React Hooks and React Context)
PostgreSQL
Sequelize
Auth0
Vercel
Neon for Vercel
Agile Methodology
NPM
Vite
Chrome Developer Tools (colorpicker, network tab, breakpoints, device mode)
Figma
dbdiagram \[dot] io
CLI/Terminal/Bash
Git (branches, issues, pull requests)
Postman (hosted API documentation)
GitHub
GitHub Pages
GitHub Projects (project management board)
Visual Studio Code
Postman
Postico or Beekeeper Studio/PG Admin
UI/UX/Design (Universal, Inclusive, Responsive) incorporating i18n, l10n, a11y, and u11y
Cloud Spreadsheet
Excalidraw
GitHub ReadME
OneRF Portal
Licensed Zoom
Philosophy :
Everything aims toward the target of students becoming above\-average or exceeding expectations of an early\-career software engineer intern in the contemporary workforce.
For example, we’re not looking for capstone projects that would have stood out years ago; we’re looking for original and intentional projects that will stand out in the present\-day job market, where every moment, especially the project\-building phase, has both instructive and industry value.
With respect to the outcome, the target is not just to attend a bootcamp nor graduate from one, but to be internship\-ready and be competitive candidates in the job market because of the training itself and the training environment co\-created with them.
With respect to training delivery, the pedagogical idea is to facilitate training that balances structured presentations with interactive discussions, emphasizing other methods such as two\-way communication, flipped classrooms, and peer\-to\-peer collaboration (pair\-programming via driver\-navigator) as keys to learner success.
With respect to agile ceremonies, students should receive training to actively communicate and actively listen, internalizing them as opportunities for a real dialogue, rather than as only a routine formality.
With respect to technical documentation, students should receive training to diagram and document as if they were contributing to a professional runbook or participating in a sprint review.
With respect to technical communication, students should receive training to talk with precision about a technical concept, and not talk around it nor talk past it.
With respect to technical implementation, students should receive training to not just understand, observe, nor code\-along, they should apply ( so they know they know it ) and demonstrate ( so others know they know it ).
With respect to persistence, we believe in being able to promptly identify and address accordingly when a student is experiencing one of the following in their learner journey: unproductive struggle and productive struggle.
With respect to a support system, the aim is to provide active support and guidance to students, adapting between standardized and personalized approaches as needed, with strong active listening skills.
Final remark: We are committed to showing up for others, responding not only to what is asked, but to what is needed. If a trainee or staff member needs support, whether stated or unstated, expressed or not, we step forward to meet the need and act with care, awareness, and initiative.
Notices:
* Please Be Notified That : All appointments are subject to budgetary guidelines, fiscal constraints, a background check, and satisfactory performance assessment with no presumption of retention. This position is a non\-tax\-levy appointment supported by funds administered through the RFCUNY. As such, the individual who fills this role will be considered an employee of the RFCUNY and will be subject to its personnel policies and procedures for project employees. RFCUNY employees are also expected to comply with the rules and policies applicable to the worksite to which they are assigned.
* Grant\-Funded Position : This is a grant\-funded position, as long as funding allocated to the particular position remains available.
* Pool Category: Full\-Time
* Definition of Full\-Time: Full\-time employees scheduled to work 70 or more hours per bi\-weekly pay period and paid on an annual basis \+ Full\-Time Instructional (non\-credit bearing courses) and Non\-Instructional \- employees scheduled to work at least 70 hours per biweekly pay period.
* Status of Position: Temporary
* Definition of Temporary: Temporary employees are employed on a full\-time or part\-time basis for one job only for a set duration of no more than 19 weeks in any 12\-month period, have no substantial expectancy of continued employment and have been notified of this fact. These employees are not eligible for annual leave.
* Modality : Hybrid
+ Monday: Onsite
+ Tuesday: Onsite
+ Wednesday: Onsite
+ Thursday: Onsite
+ Friday: Remote
+ Where “Onsite” refers to Borough of Manhattan Community College (during bootcamp, remote during curriculum prep)
+ Where “Remote” refers to Licensed Work\-Provisioned Zoom
* Work Schedule (Default):
+ Monday \- Friday: 10:00AM ET \- 6:00PM ET
+ Total of 35 hours per workweek
* According to RFCUNY’s Policy No. 506\-L \- Time Off and Leave Benefits: “ Full\-time \- Scheduled and unscheduled holidays listed on the RFCUNY holiday schedule issued annually”
+ Applicable holidays for this role: Memorial Day, Juneteenth, Independence Day
* According to RFCUNY’s Policy No. 507\-I \- Benefits Programs for Project Employees: “ Full\-Time (90 days or more) Employees who are appointed for at least 35 hours a week for at least 90 days are entitled to statutory benefits and are eligible for participation in the Research Foundation's pension, health insurance, dental insurance, life insurance, and long\-term disability plans.”
+ For this: please see the RFCUNY Project Employee Benefits Guide PDF
Pay Range:
Minimum \- Maximum: $55\.00/hour
RFCUNY Benefits
RFCUNY Employee Benefits and Accruals
Equal Employment Opportunity Statement
The Research Foundation of the City University of New York is an Equal Opportunity/Affirmative Action/Americans with Disabilities Act/E\-Verify Employer. It is the policy of the Research Foundation of CUNY to provide equal employment opportunities free of discrimination based on race, color, age, religion, sex, pregnancy, childbirth, national origin, disability, marital status, veteran status, sexual orientation, gender identity, genetic information, marital status, domestic violence victim status, arrest record, criminal conviction history, or any other protected characteristic under applicable law.