Senior Java Desktop Application Developer (Remote Optional)
Join us now! Must have java desktop application development experience.
With over 30 million recordings, Screencast-O-Matic has become a leading provider of learning and sharing experiences for educators, small business and enterprise, vloggers, gamers, agencies, or anyone needed to record and share their computer and video experiences. Our video screen capture learning and sharing company takes visual collaboration to the next level. Offered in both in free and premium versions, our software allows individuals and companies to create visually compelling and authentic video solutions for learning and collaboration. Screencast-O-Matic is a privately held, dynamic, and rapidly growing software company founded in 2006 and headquartered in Seattle, WA. For more information, visit https://www.screencast-o-matic.com.
Senior Java Desktop Application Developer
We are currently looking for an exceptional Java developer with extensive experience creating client software running on Windows and Mac OSX. Please only apply if you have experience designing and developing desktop applications in Java. This position can be remote depending on experience.
What you will do
- Help design and develop features for our desktop screen recorder and video editor.
- Become an expert in the existing codebase, creating new code and functionality which provides high quality integration into existing apps
- Work across platforms including Windows, Mac, etc.
- Translate application storyboards and use cases into functional applications.
- Directly input into the user experience and design
- Identify bugs and devise timely solutions
- Maintain code quality, documentation, organization and automation
- Platforms: Windows, Mac
- Source Control: GIT
- Expert in Java (Java 7+) cross platform client application development for Windows and Mac
- Expert in AWT/Swing/Graphics2D
- Experience with JavaFX
- Experience with JNI
- Expert in object-oriented programming
- Expert understanding of the class loading mechanism in Java
- Understanding of JVM, its limitations, weaknesses, and workarounds
- Understand design and architectural methods for scalable applications
- Code writing skills for reusable Java libraries
- Understanding of concurrency patterns, parallel algorithms, and thread management in Java
- Knowledge of data structures, design patterns, OOP, and modular code.
- Ability for writing clean, readable Java code
- Be familiar with JSON and REST based services
- Experience with Version Control Systems - Git
- Demonstrated ability to perform effectively and positively in a fast-paced, team-oriented environment
- Advanced critical thinking skills
- A passion for working with consumers and helping them achieve their goals
- Ability to work independently with minimal supervision
- Bachelor's or Master’s degree in Computer Science or related field
Good to Have:
- Experience with video hosting / streaming
- Experience with video codecs
- Experience with audio processing in Java