Mediabistro logo
job logo

API Developer - Plano, TX Job at Photon in Dallas

Photon, Dallas, TX, United States


Job Description

We are seeking an experienced Senior Java Spring Boot Developer to join our team in designing and building next-generation, microservices-based solutions. You will play a critical role in the entire software development lifecycle, from domain modeling and architecture to coding, testing, and deployment. If you excel at tackling complex technical challenges, value high-quality code, and thrive in a fast-paced, agile environment, we'd love to have you on board.

Key Responsibilities

Architecture & Design

Lead the design and implementation of microservices using Spring Boot and other Spring technologies (Spring Data, Spring Cloud, Spring Security, etc.).

Apply Domain-Driven Design (DDD) principles to define bounded contexts, ubiquitous language, and domain models that align with business capabilities.

Collaborate with cross-functional teams (Architects, DevOps, QA, Product Owners) to ensure scalable, resilient, and maintainable solutions.

Hands-On Development

Write clean, efficient, and testable Java code following best practices and coding standards.

Implement RESTful APIs (Level 2 or Level 3) with robust data contracts, versioning strategies, and error-handling conventions.

Build and maintain unit, integration, and end-to-end test suites, ensuring high code coverage and reliability.

Performance & Reliability

Analyze system performance and optimize application code, database queries, and resource utilization to meet SLAs.

Utilize caching, messaging, and other architectural patterns (e.g., Circuit Breaker, Retry) for fault tolerance and high availability.

Continuous Integration / Continuous Delivery (CI/CD)

Integrate code into CI/CD pipelines (Jenkins, GitLab CI, or Azure DevOps) for automated builds, tests, and deployments.

Collaborate with DevOps engineers to containerize services using Docker and manage deployments with Kubernetes or similar orchestration tools.

Collaboration & Leadership

Participate in agile ceremonies (daily stand-ups, sprint planning, retrospectives), providing technical leadership and insights to the team.

Proactively identify risks, bottlenecks, and technical debt, proposing innovative solutions to maintain project momentum.

Documentation & Knowledge Sharing

Maintain clear and comprehensive documentation of code, architecture, design decisions, and domain models.

Share knowledge and promote a culture of continuous learning and improvement within the engineering team.

Qualifications

Education & Experience

Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field (or equivalent practical experience).

8-10+ years of professional software development experience, with a strong focus on Java (Java 8+).

5+ years working with Spring Boot in microservices architectures.

Technical Expertise

Proven experience in Domain-Driven Design (DDD), including the ability to define bounded contexts and domain models effectively.

Strong knowledge of RESTful API development, JSON/XML payloads, and API versioning best practices.

Experience with Spring Data JPA, SQL/NoSQL databases, and best practices for data persistence and caching.

Familiarity with cloud services (AWS, Azure, GCP) and container technologies (Docker, Kubernetes) is a plus.

Hands-on experience with CI/CD tools and processes, as well as test-driven development (TDD) and behavior-driven development (BDD) methods.

Soft Skills

Excellent communication and collaboration skills, able to articulate technical concepts to both technical and non-technical stakeholders.

Strong problem-solving and analytical skills, with the ability to handle complex tasks and troubleshoot effectively.

A leadership mindset-capable of mentoring team members, driving best practices, and influencing architectural decisions.

Bonus Skills

Experience with event-driven architectures (RabbitMQ, Kafka).

Advanced knowledge of observability (monitoring, logging, tracing) and performance tuning at scale.

Familiarity with security best practices (OAuth2, JWT, encryption, etc.).

Compensation, Benefits and Duration

Minimum Compensation: USD 44,000
Maximum Compensation: USD 156,000
Compensation is based on actual experience and qualifications of the candidate. The above is a reasonable and a good faith estimate for the role.
Medical, vision, and dental benefits, 401k retirement plan, variable pay/incentives, paid time off, and paid holidays are available for full time employees.
This position is available for independent contractors
No applications will be considered if received more than 120 days after the date of this post

En Español: Descripción del trabajo

Buscamos un experto. Desarrollador Senior de Java Spring Boot para unirse a nuestro equipo en el diseño y construcción de la próxima generación, basados en microservicios En la actualidad, las soluciones de desarrollo de software son un factor fundamental en todo el ciclo de vida del desarrollo. Modelado de dominio y arquitectura para codificación¿ Por qué ? Pruebas, y DespliegueSi te sobresale en abordar desafíos técnicos complejos, valorar código de alta calidad y prosperar en un entorno rápido y ágil, nos encantaría tenerte a bordo.

Responsabilidades clave

Arquitectura y diseño

Dirigir el diseño y la implementación de microservicios el uso de Botas de primavera y otras tecnologías de primavera (datos de primavera, nube de primavera y seguridad de primavera).

Aplicación Diseño impulsado por dominios (DDD) principios para definir contextos limitados, lenguaje omnipresente y modelos de dominio que se alineen con las capacidades empresariales.

Colaborar con equipos interfuncionales (Arquitectos, DevOps, QA, Propietarios de Productos) para garantizar escalable¿ Por qué ? resiliente, y de mantenimiento Las soluciones.

Desarrollo práctico

Escriba limpio, eficiente y verificable Java el código siguiendo las mejores prácticas y las normas de codificación.

Implementar de manera respetuosa Las APIs (Niveles 2 o 3) con contratos de datos sólidos, estrategias de versión y convenciones de manejo de errores.

Construir y mantener Unidad¿ Por qué ? la integración, y de extremo a extremo conjuntos de ensayo que garanticen una alta cobertura de código y fiabilidad.

Desempeño y fiabilidad

Analizar el rendimiento del sistema y optimizar el código de aplicación, las consultas de la base de datos y la utilización de recursos para satisfacer Los SLA- ¿ Qué ?

Utilice almacenamiento en caché, mensajería y otros patrones arquitectónicos (por ejemplo, Circuit Breaker, Retry) para tolerancia a fallas y alta disponibilidad- ¿ Qué ?

Integración continua / entrega continua (CI/CD)

Integrar el código en Líneas de tuberías CI/CD (Jenkins, GitLab CI o Azure DevOps) para construcciones, pruebas y implementaciones automatizadas.

Colaborar con ingenieros de DevOps para contener servicios utilizando Docker también . y gestionar los despliegues con Los Kubernetes o instrumentos de orquestación similares.

Colaboración y liderazgo

Participar en ceremonias ágiles (stand-ups diarios, planificación de sprints, retrospectivas), proporcionando liderazgo técnico e información al equipo.

Identificación proactiva Los riesgos¿ Por qué ? cuellos de botella, y deuda técnica, proponiendo soluciones innovadoras para mantener el impulso del proyecto.

Documentación y intercambio de conocimientos

Mantén claro y Documentación completa de código, arquitectura, decisiones de diseño y modelos de dominio.

Compartir conocimientos y promover una cultura de aprendizaje continuo y mejora dentro del equipo de ingeniería.

Qualificaciones

Educación y experiencia

Licenciatura o Maestría en Ciencias de la Computación, Ingeniería de Software o un campo relacionado (o experiencia práctica equivalente).

8 a 10 años más de experiencia profesional en el desarrollo de software, con un un fuerte enfoque en Java (Java 8+).

5+ años trabajar con Botas de primavera en el microservicios las arquitecturas.

Experiencia técnica

Experiencia comprobada en el Diseño impulsado por dominios (DDD), incluida la capacidad de definir con eficacia contextos y modelos de dominio limitados.

Fuertes conocimientos de RESTful API el desarrollo, las cargas útiles de JSON/XML y las mejores prácticas de versión de API.

Experiencia con JPA de datos de primavera¿ Por qué ? Las bases de datos SQL/NoSQL, y las mejores prácticas para la persistencia y almacenamiento en caché de datos.

Familiarización con servicios en la nube (AWS, Azure, GCP) y tecnologías de contenedores (Docker, Kubernetes) es un plus.

Experiencia práctica con CI/CD herramientas y procesos, así como desarrollo impulsado por ensayos (TDD) y desarrollo basado en el comportamiento (BDD) los métodos.

Habilidades blandas

Excelente . Comunicación y la colaboración habilidades, capaces de articular conceptos técnicos tanto a las partes interesadas técnicas como no técnicas.

Fuertes Resolución de problemas y análisis habilidades, con la capacidad de manejar tareas complejas y solucionar problemas de manera efectiva.

En el caso de A mentalidad de liderazgo-capacidad para asesorar a los miembros del equipo, impulsar las mejores prácticas e influir en las decisiones arquitectónicas.

Habilidades de bonificación

Experiencia con impulsado por eventos En la actualidad, las arquitecturas (RabbitMQ, Kafka).

Conocimiento avanzado de observabilidad (monitoreo, registro, seguimiento) y ajuste de rendimiento a escala.

Familiarización con las mejores prácticas de seguridad (OAuth2, JWT, cifrado, etc.)

Compensación, prestaciones y duración

Compensación mínima: USD 44.000
Compensación máxima: USD 156.000
La compensación se basa en la experiencia y las cualificaciones reales del candidato.
Los beneficios médicos, visuales y dentales, el plan de jubilación 401k, el salario variable / incentivos, el tiempo libre remunerado y las vacaciones pagadas están disponibles para los empleados a tiempo completo.
Esta posición está disponible para contratistas independientes
No se considerarán las solicitudes si se reciben más de 120 días después de la fecha de este puesto.