Jun An

Student

Singapore
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts

Summary

🤩
Rockstar
Jun An is a 4th-year Computer Science student at NUS with a decade of hands-on software engineering experience, focused on back-end development, refactoring, and test automation. He has contributed to well-known open-source projects such as RepoSense and the SE-EDU AddressBook series, improving robustness, portability (java.nio.file.Path migration), and undo/redo and storage logic. Jun also strengthened ML tooling confidence by expanding test coverage in the mlpack library’s mean_shift algorithm, showing attention to correctness and edge cases. Comfortable across Java and C++ ecosystems, he favors clean, maintainable code and pragmatic performance improvements that benefit both developers and users.
code10 years of coding experience
github-logo-circle

Github Skills (29)

unit-testing10
git10
c-language10
boost-test10
data-set10
testing10
machine-learning10
object-oriented-programming10
java10
datasets10
javas10
performance-optimization10
fileio10
file-processing10
file-handling10

Programming languages (7)

JavaC++CSSGCC Machine DescriptionJavaScriptHTMLPython

Github contributions (5)

github-logo-circle
reposense/RepoSense

May 2018 - Feb 2019

Contribution analysis tool for Git repositories
Role in this project:
userBack-end Developer
Contributions:32 commits, 94 PRs, 64 pushes in 8 months
Contributions summary:Jun primarily contributed to the refactoring and improvement of the `reposense/reposense` project, focusing on code quality and performance. Their work involved replacing `java.io.File` with `java.nio.file.Path` for better OS-invariant coding and exception handling, as well as optimizing performance through filtering `git blame` output and improving stream processing. The user also made improvements to the date range functionality in the git blame command, and implemented file exclusion patterns.
repositoriescontribution-analysisrepository-managementgit-statisticsauthor-statistics
se-edu/addressbook-level4

Jan 2018 - Sep 2018

:ab::four: Address Book sample application (Level 4)
Role in this project:
userBack-end Developer
Contributions:26 commits, 11 PRs, 1 push in 8 months
Contributions summary:Jun primarily focused on improving the robustness and maintainability of the Address Book application's back-end code. Their contributions include refactoring error handling by replacing `assert false` with `throw new AssertionError()`, adding methods to convert the `XmlSerializableAddressBook` to model type, and making corresponding calls to this method in `XmlAddressBookStorage`. They also refactored the code related to the undo/redo functionality by migrating the responsibility for version control to the `VersionedAddressBook` class.
addressjavafxsample-applicationfourjava
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial