Job Description
This role is pivotal in the development and enhancement of the Emergence SDK within Unity. You will collaborate closely with the Head of Product and the Development Team to design, implement, and refine new features that align with our product roadmap. Your responsibilities will span the entire software development lifecycle, including but not limited to feature development, rigorous testing, documentation updates, and bug resolution. Additionally, you will contribute to the creation of engaging content and the design of intuitive user interface components directly within the Unity environment. Seamless integration of the SDK across different platforms and applications is a key focus, requiring coordination with both Unreal and Back-End Developers to ensure cross-platform compatibility and performance.
Key Responsibilities
- Develop and maintain new features for the Unity Emergence SDK plugin, ensuring optimal performance, stability, and compatibility across various platforms and applications.
- Conduct thorough testing of SDK components to identify and resolve bugs, ensuring a high-quality user experience and robust functionality.
- Update and improve developer documentation to provide clear guidance on SDK usage, troubleshooting, and best practices for integration.
- Collaborate with cross-functional teams, including Unreal and Back-End Developers, to ensure seamless SDK integration and alignment with overall product goals.
- Design and implement user interface components within Unity that enhance usability and align with the product's visual identity.
- Contribute to the creation of content assets that support SDK functionality, ensuring they meet technical and creative requirements.
- Participate in code reviews and knowledge-sharing sessions to maintain code quality and foster a collaborative development culture.
- Stay updated on emerging technologies and industry trends to identify opportunities for innovation and improvement within the SDK.
Job Requirements
- Proven experience in Unity development, with a strong background in SDK creation and maintenance.
- Excellent programming skills in C# and a deep understanding of Unity's architecture and best practices.
- Ability to work independently and as part of a team, with a focus on delivering high-quality code under tight deadlines.
- Strong communication skills to effectively collaborate with product managers, designers, and other developers.
- Proficiency in version control systems (e.g., Git) for managing code changes and maintaining project history.
- Experience with software testing methodologies and tools (e.g., unit testing, integration testing) to ensure reliability and performance.
- Knowledge of documentation best practices and the ability to create clear, concise, and user-friendly technical documentation.
- Attention to detail and problem-solving skills to debug complex issues and optimize SDK functionality.
Technical Requirements
- Proficiency in Unity 3D and its ecosystem, including asset management, scripting, and plugin development.
- Experience with cross-platform development, ensuring SDK compatibility with iOS, Android, and desktop systems.
- Understanding of software development lifecycle (SDLC) and agile methodologies for iterative development and delivery.
- Ability to work with third-party tools and APIs to integrate SDK features with external services and platforms.
- Knowledge of performance optimization techniques to enhance SDK efficiency and reduce resource consumption.
- Experience with cloud-based development environments and CI/CD pipelines for streamlined workflows and deployment.
Additional Qualifications
- Familiarity with Web3 technologies (e.g., blockchain, smart contracts) is a plus, though not mandatory.
- Passion for continuous learning and a proactive approach to mastering new tools and technologies.
- Strong teamwork and collaboration skills, with the ability to contribute to a dynamic and fast-paced development environment.
- Experience with user experience (UX) design principles to create intuitive and user-friendly interface components.
- Ability to document technical processes and share knowledge with team members to ensure consistency and scalability.
- Excellent time management skills to balance multiple tasks and meet project milestones effectively.