Back to jobs

Software Engineer

National Center for Missing & Exploited ChildrenRemote (United States)Posted 1w ago
Java Full Stack - Spring Boot & Angular
USD 100000-115000 per annual
Full Time
Remote
Craft my tailored resume free

Free to start · No card

Job description

LOCATION: Remote FLSA: Exempt DIVISION: Technology DEPARTMENT: Technology

GENERAL DESCRIPTION

The NCMEC Technology Division is seeking a creative and self-motivated Software Engineer to join our Software Engineering team. In this position, you will use your skills and passion to help combat child exploitation and survivor revictimization in a dynamic, progressive, and technology-driven environment. You’ll also be part of an expert engineering team that highly values collaboration, empowerment, innovation, and a team-centric mentality. You and your team will be challenged to conceive and implement well-designed solutions for complex problems relating to everything from real-time media processing to graph analysis, all at big data scale and using a variety of cutting-edge technologies and techniques. You’ll also have the opportunity to work with other engineers from software industry leaders like Microsoft, Google, Facebook, and Amazon on pioneering technologies that keep kids safe online. The tools you and your team build will be used to automatically enrich and connect vast amounts of data, will support the evolving needs of NCMEC analysts, and will be used by technology companies and law enforcement agencies all over the world.

ESSENTIAL DUTIES AND RESPONSIBILITIES

  • Write well designed, testable, efficient code.
  • Develop innovative ideas and solutions for complex operational and technical challenges.
  • Rapidly iterate on new and existing applications to enhance and extend capabilities while ensuring scalability, reliability, and performance.
  • Participate in the full software development lifecycle as part of a high performing Scrum team.
  • Partner with technology industry leaders (Facebook, Google, Palantir, Amazon, Adobe, Intel, etc.) and domestic and international law enforcement agencies to help detect and prevent child exploitation.
  • Function as a domain expert on information systems
  • Assist in the review and refinement of software requirements.
  • Assist with identifying and implementing process improvements to existing business and IT processes that will increase operating efficiencies.
  • Assist in the evaluation of technical solutions for the Technology Division and provide detailed estimates to support the planning efforts of the operational divisions.
  • Participate in code reviews to ensure applications support existing architecture and framework guidelines and adhere to high quality coding standards.
  • Respond to and assist in the resolution of production issues as needed, with the rare occurrence of support required after hours.
  • Maintain the integrity and confidentiality of highly sensitive material, information, and processes.
  • Work effectively with minimal supervision in an Agile environment while mentoring junior Engineers.

REQUIREMENTS AND QUALIFICATIONS

  • Bachelor’s degree in Computer Science, Information Technology, or related field or equivalent experience.
  • 3-5 years of full stack Java development and familiarity with Spring Boot and the Spring Framework.
  • Experience building highly available, scalable, cloud-ready applications, including client, server, and database layers.

KNOWLEDGE, SKILLS, AND ABILITIES

  • Experience with the most recent versions of Java and Spring Boot highly desired.
  • Strong object-oriented software development and data modeling skills.
  • Experience with the design and implementation of distributed systems and microservice architectures.
  • Experience with the design and implementation of RESTful web services.
  • Experience with the design and implementation of message-driven and event-driven architectures as well as message brokers (RabbitMQ, ActiveMQ, Kafka, etc.) and Spring AMQP.
  • Experience with the design and implementation of relational databases, with an understanding of NoSQL data stores (Solr, Elasticsearch, MongoDB, Neo4j, etc.) a plus.
  • Hands-on frontend development experience with common tools and technologies (JavaScript, TypeScript, Sass, etc.), with familiarity of common frameworks and libraries (Angular, React, Bootstrap, jQuery, etc.) a plus.
  • Experience building and deploying containerized applications using Docker, with exposure to common CI/CD tools a plus.
  • Strong ability to debug code and troubleshoot issues.
  • Experience with unit testing frameworks such as JUnit, Mockito, and TestNG.
  • Understanding of Agile software development, including the ability to gather and analyze requirements.
  • Ability to think beyond an immediate task and consider long-term goals and implications.
  • Ability to work well in a collaborative team environment and to accept and provide feedback.
  • Excellent organization and time management skills and the ability to prioritize and carry out multiple tasks.
  • Self-sufficiency and internal motivation to determine impediments and produce solutions.
  • Excellent critical thinking skills, attention to detail, and an eye for consistency and productivity.
  • Excellent interpersonal and oral and written communication skills.

Originally posted on Himalayas

Prepare your application

Use the description above to assess your fit for National Center for Missing & Exploited Children. This checklist is guidance from Resumize, rather than additional requirements from the employer. Imported listings can be shortened or change after collection, so confirm the complete description and current availability before sending an application.

Match requirements to evidence

Identify the responsibilities and skills the employer explicitly names. For each important requirement, choose one example from your work, education, training, or projects. Explain what you did, how you did it, and what changed as a result. Include a measurable outcome when you can support it. If you lack a requirement, describe related experience accurately instead of adding an unfamiliar skill to your resume.

Put the most relevant examples near the top of your resume. Keep job titles, dates, qualifications, and contact details consistent across your application materials. Use the employer’s terminology when it describes your experience accurately; a copied list of keywords does not explain your contribution. A short, specific bullet is easier to review than a paragraph that mixes several unrelated duties.

Check the working arrangement

Confirm the location, schedule, employment type, and any eligibility requirements on the employer’s site. A remote label does not establish worldwide eligibility or flexible hours. If compensation, benefits, equipment, travel, or contract duration are missing from this listing, write down your questions for the recruiter. Do not assume details from another opening at the same company apply to this role.

Review before submitting

Follow the employer’s requested file format and application instructions. Open your exported resume and check that its text is selectable, its sections read in order, and its links work. Proofread names, dates, and contact information. Share confidential work samples only when you have permission, and use an anonymized example when necessary.

Submit through a trusted employer or recruiting destination. If the original listing has disappeared, search the employer’s careers page for the title rather than assuming the vacancy remains open. Save the application date, job reference, and the version of your resume you sent. Those details help you prepare for a later conversation and avoid submitting conflicting information through several job boards.

Review your resume for writing and readability feedback, or browse other openings if this opportunity is unavailable.