Location: Washington, DC near Union Station
Contract Duration: 12 months (extensions are likely)
- Provides technical design direction and solutions for architectural and functional requirements so that software is written with consistent forethought and support of the following quality aspects:
- Run-time qualities (performance, security, availability, functionality, usability, etc.)
- Non-run time qualities (maintainability, modifiability, portability, reusability, testability, etc.)
- Intrinsic qualities (fitness of purpose, conceptual integrity, correctness, robustness, completeness, build ability, traceability, etc.)
- Develops prototype code as examples for newly designed components, refactoring efforts, and core architectural frameworks and components.
- Provides technology insights and expertise.
- Provide subject matter expertise regarding external systems and third-party functional components and their interfaces.
- Proactively take measures to improve developer productivity through knowledge transfer, mentoring, coaching, and consistency as a Design Team.
- Provide tools, templates, and coaching so that Application Developers can participate in and contribute to the Application Design process in a meaningful and valuable way, and can properly translate design artifacts.
- Mentor and help to build the skill and experience of Application Developers regarding coding techniques, practices, and disciplines, and the application of software engineering design principles and patterns.
- Participate in efforts to work through and resolve difficult development challenges.
- Promote Application Design Team consistency and expertise by regularly sharing design ideas with the team and building consensus.
- Peer review each design deliverable for quality, consistency, thoroughness, and application of lessons learned from past reviews.
- Promote and use the common design repository, and contribute to the repository's "cleanliness" and integrity.
- Provides support for project management and management of software development life cycle (SDLC) processes and practices.
Nice to Have
- Experience with Hybris
- Experience with Mulesoft
- Significant Java architecture experience
- Cloud Technologies
- Salesforce Platform
- Data architecture experience with data augmentation services experience to take data from multiple source systems and provide data mapping to consistent format to be consolidated in a central source